在响应中 Content-Disposition 是真正的作为消息头的一部分,它主要有两种用法:
inline
当它的值为 inline 时,表示响应的消息作为 HTML 页面的一部分(inline 是默认值)。
假设你本身想要下载一个 PDF 文件,但是你将 Content-Disposition 的值设置为 inline 或者没设置,你的响应头对应如下:
Content-Type: application/pdf
Content-Disposition: inline; filename="example.pdf"
此时浏览器不会去下载这个文件,而是直接在浏览器中去打开这个 PDF 文件。
相信这样的场景大家会熟悉,我们经常去浏览一个学术完整的 PDF 链接时都是直接在浏览器中打开 PDF 文件,而不是下载到本地,这就是设置了 Content-Disposition: inline 的原因(即使没设置它的默认值也是这个)。
attachment
现在再来看下 Content-Disposition: attachment,这个是真正意义上的文件下载。还是以前面的响应头为例:
Content-Type: application/pdf
Content-Disposition: attachment; filename="example.pdf"
此时,当服务器给客户端(通常是浏览器)响应时,它会有一个弹窗提示,提醒你保存文件。而保存的文件的默认名就是 filename 指定的值,当然该属性是非必须的。
博主 你的ssl证书收费的吗
用的免费 Let's Encrypt , 不收费
这篇文章写得深入浅出,让我这个小白也看懂了!