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事件 |

相关推荐
宠友信息26 分钟前
社区类源码开发实践中的仿小红书系统技术要点分析
java·spring boot·redis·mysql·uni-app·vue·内容运营
南城以南溫暖如初1472 小时前
从零搭建24小时自助健身系统:技术选型与核心模块实战
java·spring boot·redis·mysql·vue·mybatis
_xaboy10 小时前
开源表单设计器 FcDesigner 保存表单教程:toJson parseJson 回显
低代码·开源·vue·表单·fcdesigner
钛态21 小时前
Vite 中的 CSS 工程化:从 CSS Modules 到 UnoCSS 的渐进式迁移
前端·vue·react·web
南城以南溫暖如初1471 天前
树洞交友系统架构设计与匿名聊天实战指南
java·spring boot·mysql·系统架构·vue·mybatis·交友
_xaboy2 天前
低代码可视化表单设计器 FcDesigner 远程请求教程:GET POST 变量鉴权
低代码·开源·vue·表单·fcdesigner
宠友信息5 天前
IM系统开发技术路线分析,即时通讯源码助力快速搭建聊天应用
java·spring boot·redis·websocket·mysql·uni-app·vue
南城以南溫暖如初1476 天前
从传统健身房到无人值守:24小时自助健身系统的技术实现路径
java·spring boot·mysql·架构·vue
新中地GIS开发老师6 天前
WebGIS开发学生作品 | 基于无人机影像的烟草检测智能体与数字化管理平台
vue·web·mapbox·webgis
南城以南溫暖如初1477 天前
外卖CPS实战指南:从技术选型到运营落地全流程解析
java·spring boot·mysql·架构·vue