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

相关推荐
LYFlied3 小时前
Vue3虚拟DOM更新机制源码深度解析
前端·算法·面试·vue·源码解读
@AfeiyuO6 小时前
Vue3 玫瑰图
vue·echarts
running up2 天前
Pinia 完整使用指南
vue
安_2 天前
<style scoped>跟<style>有什么区别
前端·vue
辛-夷2 天前
TS封装axios
前端·vue.js·typescript·vue·axios
@AfeiyuO3 天前
Vue3 矩形树图
vue·echarts
weixin_422555423 天前
ezuikit-js官网使用示例
前端·javascript·vue·ezuikit-js
zhz52143 天前
代码之恋(第十五篇:分布式心跳与网络延迟)
网络·分布式·ai·重构·vue·结对编程
我看刑3 天前
【已解决】el-table 前端分页多选、跨页全选等
前端·vue·element
sg_knight4 天前
拥抱未来:ECMAScript Modules (ESM) 深度解析
开发语言·前端·javascript·vue·ecmascript·web·esm