【问题标题】:Sending Chunked HTTP request from Javascript从 Javascript 发送分块 HTTP 请求
【发布时间】:2026-01-16 06:45:01
【问题描述】:

This question 展示了如何在 Javascript 中读取分块响应,但我想发送来自 Javascript 的分块 HTTP POST。 XMLHttpRequest 的documentation 没有提及任何内容。 this question的回答是否意味着由于浏览器对设置标头的限制而无法实现?

【问题讨论】:

  • 您可以通过在客户端上进行简单的轮询并定期发布 POST 来做到这一点。只要您的远程进程不序列化访问,那么您应该没问题。您可以添加自定义标头来标识服务器端相关性的序列或任务。

标签: javascript ajax


【解决方案1】:

我认为 XMLHttpRequest 已经很老了,我认为替代方案是使用Axios,这是一个更新的 JavaScript 包,有助于处理网络请求。它比 JavaScript 中的 fetchajax 容易得多。

【讨论】:

    【解决方案2】:

    请参阅此 MDN 页面以了解 Transfer-Encoding。您可以将类型设置为分块。

    您必须指定每个块的长度,但它允许您以块的形式发送数据。

    【讨论】:

      【解决方案3】:

      我认为 XMLHttpRequest 无法使用 - 它很旧而且有些受限,它实际上只是一个针对早已不复存在的 IE ActiveX 组件的向后兼容性破解。

      但是,在最前沿(尚未在 Firefox 中),您可以使用 fetchTransformStream。这让你send a stream from JS

      【讨论】: