XMLHttpRequest接受chunked编码传输的HTTP Response时有问题

实际中遇到的问题,虽然没有最终解决,但是浪费了好长事件,记录下来,避免再次踩坑。

现在前端框架发送Ajax请求时,大部分组件最终都是调用的XMLHttpRequest对象来发送和接受请求。

使用XMLHttpRequest接受流式chunked编码的数据时(Transfer-Encoding: chunked),出现了如下问题:

|--------------------------|------------------------------|--------------------------|
| 响应的Content-Type | 谷歌浏览器 | 火狐浏览器 |
| 未设置 | 接收到1k左右的内容后才会触发 onprogress事件 | 接收到第一次内容后就触发onprogress事件 |
| text/plain | 接收到1k左右的内容后才会触发 onprogress事件 | 接收到第一次内容后就触发onprogress事件 |
| application/octet-stream | 接收到第一次内容后就触发onprogress事件 | 接收到第一次内容后就触发onprogress事件 |
| text/event-stream | 接收到第一次内容后就触发onprogress事件 | 接收到第一次内容后就触发onprogress事件 |

相关推荐
ling081408144 小时前
Vue3全局挂载Dialog组件
前端·javascript·vue
langzitianya10 小时前
RestTemplate实时接收Chunked编码传输的HTTP Response
springboot·stream·resttemplate·chunked·流式
这可不简单1 天前
vue2 和 vue3 :关于keep-alive 使用的不同
前端·vue.js·vue
lmxnsI1 天前
修改层级较深的数据导致页面没有实时渲染
vue.js·vue
山石岐渡2 天前
Vue3教程 - 4 Vue3的API
vue.js·vue
supermapsupport2 天前
iClient3D for Cesium 实现限高分析
3d·vue·gis·cesium·supermap·webgis
工业互联网专业2 天前
Python毕业设计选题:基于django+vue的疫情数据可视化分析系统
python·django·vue·毕业设计·源码·课程设计
振华OPPO2 天前
VS Code使用NPM脚本启动Vue程序
前端·vue.js·vscode·npm·node.js·vue
Domain-zhuo2 天前
Webpack中loader的作用/ loader是什么?
前端·javascript·vue.js·webpack·node.js·vue