下载文件 后端返回给前端 response header 响应头

当浏览器在请求资源时,会通过http返回头中的content-type决定如何显示/处理将要加载的数据,如果这个类型浏览器能够支持阅览,浏览器就会直接展示该资源,比如png、jpeg、video等格式。在某些下载文件的场景中,服务端可能会返回文件流,并在返回头中带上Content-Type: application/octet-stream,告知浏览器这是一个字节流,浏览器处理字节流的默认方式就是下载。

application/octet-stream是应用程序文件的默认值。意思是未知的应用程序文件 ,浏览器一般不会自动执行或询问执行。浏览器会像对待,设置了HTTP头Content-Disposition 值为 attachment 的文件一样来对待这类文件,即浏览器会触发下载行为。

说人话就是,浏览器并不认得这是什么类型,也不知道应该如何展示,只知道这是一种二进制文件,因此遇到content-type为application/octet-stream的文件时,浏览器会直接把它下载下来。这个类型一般会配合另一个响应头Content-Disposition,该响应头指示回复的内容该以何种形式展示,是以内联的形式(即网页或者页面的一部分),还是以附件的形式下载并保存到本地。

作者:麦当_

链接:https://juejin.cn/post/6979224810681270309

http - Do I need Content-Type: application/octet-stream for file download? - Stack Overflow

复制代码
Content-Type: application/octet-stream
Content-Disposition: attachment
bash 复制代码
Content-Type: application/pdf
bash 复制代码
Content-Type: image/png
相关推荐
__zRainy__5 小时前
Node系列 · ORM:Sequelize 简介
数据库·后端·node.js
计算机魔术师5 小时前
斯坦福研究:AI 对入门级岗位冲击最大
前端
Simon_He5 小时前
一个渲染内核,五个框架包:我的流式 Markdown 渲染库是怎么长成“全家桶”的
前端·vue.js·markdown
AskHarries5 小时前
OpenClaw 如何查看历史对话和响应时间?
后端
n8n5 小时前
Spring Boot 3.2+ 新特性、Spring AI 核心架构与 API Key 安全管理技术文档
后端
小满zs5 小时前
关于HBuilderX+ 微信小程序开发工具启动的问题
前端·uni-app
fireworks996 小时前
接口鉴权(401与403)
java·后端
林深见鹿_海蓝见鲸6 小时前
微信小程序反编译完整教程(Windows 新手版)
前端
n8n6 小时前
Java 21 虚拟线程(Virtual Threads)
后端
默_笙6 小时前
😋 我让爬虫终于看到了我的网站,后端同事说"这也行?"(上):SEO 与渲染模式
前端·javascript