admin管理员组文章数量:1566354
基本思路:
1.Content-Disposition用来触发浏览器的下载,同时可以设置默认的下载的文件名。
2.修改Content-Type为浏览器不能识别打开的类型,触发浏览器去下载。
在又拍云上可以通过多种方式灵活实现,下面我们来探索一下各种姿势吧。
Content-Disposition
又拍云 CDN 服务支持通过 _upd 参数和 Rewrite 方法实现。
示例一:
请求参数中加入 “_upd=true” ,代表添加响应头为: Content-Disposition: attachment
举个栗子:
http://upyun-assets.b0.upaiyu...
Rewrite实现规则:
$ADD_RSP_HEADER(Content-Disposition, attachment)
2.示例二:
请求参数中加入 “_upd=abc.png”,代表添加响应头为: Content-Disposition: attachment;
filename="abc.png"
举个栗子:
http://upyun-assets.b0.upaiyu...
Rewrite实现规则:
$ADD_RSP_HEADER(Content-Disposition, 'attachment;filename="abc.png"')
通过 Rewrite 实现不用改造 URL ,但是对于 URL 的更加精确控制比较麻烦。Rewrite实现比较适用于目录级别或者整个服务下的控制。_upd 参数比较适合精确到单个URL的控制。
注意:
参数跟随 开启的情况下,_upd参数无效。建议使用Rewrite去实现。
Content-Type
对于使用又又拍云的存储文件,通过API去上传的时候可以指定 Content-Type ;当然也可以通过 Rewrite规则去实现修改 Content-Type 。
1.示例:
通过API上传的时候指定文件类型比如:
content-Type: application/octet-stream
通过 Rewrite 实现:
$ADD_RSP_HEADER(Content-Type, application/octet-stream, 1)
其中 1 表示会覆盖掉已有的响应头 。
修改 Content-Type 不是很常用,具有一定的局限性。但是也可以实现,在上传的时候就直接指定了文件类型,后面就不用设置过多的配置。对于就是需要图片 视频 下载的应用,在上传就指定文件类型也是不错的选择。
版权声明:本文标题:浏览器触发下载的各种姿势 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1727553665a1120800.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论