最近开发项目,根据后端给定的url下载文件。实际开发中,浏览器会打开pdf文件或json文件而不会进行下载。
html5 a标签的download属性,代码中添加了此属性,可并不生效。
要想download属性生效出了浏览器兼容问题外,还需要符合同源策略。刚好我的项目下载地址跨域了,所以downlaod不生效。
再查找资料后,最简单的办法就是改后台服务器配置。这里我使用了nginx服务器做了测试。
nginx配置如下:l配置nginx的
location
遇到.pdf结尾的连接响应头增加Content-Disposition attachment;
这后返回头就是告诉浏览器直接下载文件。
server {
# ...
location ~* \.pdf$ {
add_header Content-Disposition attachment;
}
location / {
}
# ...
nginx html文件夹下增加test.html,和test.pdf