问题背景:项目开发测试阶段出现该问题。
复现:开发调试过程中一直没有问题,本地下载excel、Word、pdf 都完美,但是在服务部署到服务器之后,测试环境的chrome就总是下载失败,提示网络错误。
。
这时候追踪问题,本地测试时发现每次下载都会有问题警示:Resource interpreted as Document but transferred with MIME type application/octet-stream,
各种百度,大多数都是说修改content-type,但是不管修改成什么类型,抓包都显示返回了相应的类型,但下载就是不成功(不得不吐槽一下百度,真的是打广告一流)。
转战bing,成功找到解决办法:增加头信息Content-Length,,其中bytes就是要下载的二进制流文件,
造成这种情况的原因,其实是高版本的chrome对字节流的下载进行了限制,需在头信息中声明字节流长度。(这里的限制具体是什么,等后续找到确切说法我再来更新)
2019.08.23 更新:这种方式导出的word有丢失文字现象。在头部增加的流的长度只是正文的长度(bytes.Length部分),还需要加上头部的长度,我这里加了5000,也是一点点测出来的。
仅作为问题记录
解惑地址:https://blog.csdn.net/qq_34720759/article/details/79189480
好好学习,认真笔记
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现