美文网首页
a标签download chrome 浏览器报服务器错误

a标签download chrome 浏览器报服务器错误

作者: 南慕瑶 | 来源:发表于2020-06-17 20:48 被阅读0次

1.使用 a 标签进行文件下载时,download 属性主要是用来设置默认文件名称的,可以不加。

只要给了文件下载的 href 地址,a 标签就可以完成下载。

对于图片、pdf类的文件,我们一般需要加 download,告诉浏览器,下载这个文件,而不是打开新的标签页去预览。但是,如果后台返回图片/pdf时,设置了 filename,即使前端没有添加 download 属性,浏览器也会进行下载。

2.添加了 download 属性的 a 标签,点击访问 href 地址,在 chrome 浏览器中,不会携带 referer 请求头。而在其他浏览器中、或是 chrome 访问不带 download 属性的 a 标签的 href,都会携带 referer。

【注意】

chrome 对于 download 属性处理的这个行为差异,很可能造成,加了 download 属性的 a 标签,访问带有 referer 校验的下载地址,返回失败。从而造成文件下载失败(报服务器错误)

综合1、2,使用 a 标签进行文件下载时,应该尽量不加 download 属性。对于图片等文件,让后台设置  Content-Disposition 为 attachment,最好同时指定 filename,浏览器即可下载文件,防止预览。

【附:其他相关知识】

mac 内置的 nc(netcat) 指令,可以用于起一个临时的服务、并监听,用于测试。

如:

nc -l 8000

在 8000 端口起服务,并监听。

相关文章

网友评论

      本文标题:a标签download chrome 浏览器报服务器错误

      本文链接:https://www.haomeiwen.com/subject/uwqexktx.html