字节流写入浏览器做导出功能,在Chorme下载文件时“失败-网络错误”
2018-01-28 21:02
1601 查看
解决办法
总结
我是在做导出功能时候遇到的。导出Excel功能,是把数据写成csv文件,然后用stream流写到客户端(浏览器)的形式完成的。本地测试时成功了,但是到服务器上(使用域名cdn等)却提升如下错误
并且firefox等其它浏览器都可以,就是chrome不行。
加上的代码就一句,向客户端声明输出流的长度
其中 bytes就是所要写入浏览器的字节流。
总结
我是在做导出功能时候遇到的。导出Excel功能,是把数据写成csv文件,然后用stream流写到客户端(浏览器)的形式完成的。本地测试时成功了,但是到服务器上(使用域名cdn等)却提升如下错误
并且firefox等其它浏览器都可以,就是chrome不行。
解决办法
我在查阅了相关代码后,发现对写入浏览器的stream流,有的加上了流的长度,试了下就成功了。我想是因为chrome做了某些安全限制吧,防止未知流写入。加上的代码就一句,向客户端声明输出流的长度
response.AddHeader("Content-Length", bytes.Length.ToString());
其中 bytes就是所要写入浏览器的字节流。
总结
在将字节流写入浏览器时,一定要声明字节流的长度!!!相关文章推荐
- 从网络中下载文件,并且写入SDCARD根目录下,成功返回true,失败返回false
- 数据写入到csv文件或者通过浏览器导出到下载文件
- php导出csv数据在浏览器中输出提供下载或保存到文件的示例
- windows2008+iis7,无组件上传写入文件失败,ADODB.Stream 错误 800a0bbc
- NPAPI-浏览器开发之网络文件SRC下载(NPN_GetURLNotify,NPP_NewStream....)
- JS前端创建html或json文件并浏览器导出下载
- 实现网络下载文件功能
- java网络下载 文件错误的一个可能原因
- WebView使用(内存泄露+获取网页标题+js交互+调用浏览器下载文件+网页加载失败+清缓存)
- 解决:ADODB.Stream 错误 '800a0bbc' 写入文件失败
- 下载的时候提示:“写入到文件时产生错误(请用磁盘检查工具检查修复)”的解决办法
- 直接客户端浏览器下载文件,不必通过回传服务器再下载(例如将table内容导出excel)
- struts2 下载中文名文件 bug 未命名错误 乱码错误 不能满足适应大众三大浏览器
- 将元数据写入文件“....dll”时发生错误 and Xap 包装失败 解决方法
- 错误 '80020009',写入文件失败
- 动软出现“添加服务器配置失败,请检查是否有写入权限或文件是否存在“错误
- android开发 更新下载apk部分机型文件写入失败(Permission denied)
- 【POI】导出excel文件,不生成中间文件,直接将内存中的数据创建对象下载到浏览器
- 多看Kindle的“导出失败,请检查网络或账号”错误的解决