问题标签 [chunked-encoding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4850 浏览

http - HTTP 内容长度和分块传输编码。有 2GB 的限制吗?

现代网络服务器是否支持Content-Length 超过 2GB4GB的 HTTP ?

HTTP传输编码中的块怎么样?单个 HTTP 块的长度可以超过2GB吗?

我需要知道在我的代码中使用32-bit integers或。64-bit integers

0 投票
2 回答
6683 浏览

http - 正确的分块传输编码格式

与规范相比,我很好奇分块数据的正确格式以及 Twitter 从他们的活动流中返回的内容。

当使用 curl 尝试从 Twitter 获取 Chunked 流时,curl 报告:

我已经根据维基百科信息和 HTTP 规范(本质上是:\r\n\r\n)编写了一个分块数据发射器,我的结果如下所示:

不同之处在于,Twitter 似乎将字符串的长度作为整数的一部分作为块体的一部分(连同必须存在的十六进制值一起),我想确保我是没有遗漏什么。Twitter 文档没有提到长度值,不在他们的示例中,我在规范中也没有看到任何关于它的内容。

0 投票
3 回答
6830 浏览

ios - NSURLConnection 用于分块传输编码的替代方法是什么

我已经检查了与此相关的其他问题,但唯一的答案是“使用ASIHTTPRequest”,因为它不再被开发我想问人们正在使用哪些替代品,在使用我们的 SDK 时我遇到了很多奇怪的行为NSURLConnection从服务器接收数据时。

NSURLConnection我们将其追溯到不能很好地处理分块编码中的响应这一事实。或者至少我们在这里阅读了这个问题NSURLConnection 和“分块”传输编码

我们采访的一些开发人员说它在 iOS 5 中变得更好,我们需要确保我们的 SDK 至少向后兼容 iOS 4.3。

我想确认这实际上是一个问题NSURLConnection,以及人们如何处理它。

到目前为止我发现的所有替代方案都是基于的NSURLConnection,我假设这样会有同样的缺陷。ASIHTTPRequest实际上确实有效,因为它的基础略低于NSURLConnection,但正在寻找不再支持的知识的替代方案。

查看的其他库列表是: Restkit, ShareKit, LRResty, AFNetworking, TTURLRequest

我知道这里有类似的问题RESTKit 是 ASIHTTPRequest 的一个很好的替代品吗?和这里ASIHTTPRequest 替代但是这两种解决方案都基于 NSURLConnection。

编辑:我注意到我在帖子开头指出了错误的问题,所以更新了。它指向 2008 年的一个线程,我见过类似的线程,但没有一个是最近的。

0 投票
0 回答
957 浏览

vb.net - 在 vb.net 中通过 http 分块编码发送 mp3

嗨,我正在尝试通过带有卡盘编码的 http 发送 mp3 数据。这个想法是 mp3 稍后将成为实时流(mp3 片段),所以我不知道内容长度会是多少。

这是我使用浏览器访问时无法播放的代码....尽管它识别出头文件文件根本无法播放。

有人知道我哪里出错了吗?

我使用 HTTP 分析器捕获的响应的前几行:

0 投票
2 回答
516 浏览

http - gzip + chunked:解压前必须等待整个文件被下载?

我很确定答案,但我希望有人确认。

在 HTTP 标头中使用 gzip 时,无法仅解压缩文件的一部分。我必须先下载整个文件才能解压缩以获取数据。

正确的 ?

例如,如果我使用如下代码获取前 100 个字节:

此时我将无法解压缩它。

谢谢。

0 投票
1 回答
494 浏览

php - 接收分块编码的帖子时,PHP 无法通过 $_POST 读取 POST 数据

我有两台服务器在与不同提供商的共享主机上运行。一个是在 Apache 2.2.16 中运行 PHP 5.2.9,另一个是运行 PHP 5.2.17。

两台服务器上的脚本都可以在我的应用程序中正常工作,除非它们收到带有分块编码的 POST。

发生这种情况时,有时移动客户端会出现这种情况,PHP 似乎无法通过$_POST. 更重要的是,上面提到的第一台服务器在 5/6 天前似乎已经发生了更新(尽管主机不愿意/无法确认这一点)之前,一直可以正常使用分块编码。

谁能建议 PHP 或 Apache 中的哪些设置会影响这一点?

PS 我正在与两位主持人的技术支持进行持续和旷日持久的讨论,这些讨论似乎没有结果。

0 投票
1 回答
647 浏览

ruby-on-rails - 将分块传输与内容处置一起使用

我正在使用以下标头将下载从通用路径推送到客户端,例如/controller_name

但是,下载所有数据后,浏览器似乎显示“另存为”对话框。有没有办法在下载即将开始时显示对话框?

0 投票
1 回答
2273 浏览

c - 如何处理来自服务器的分块响应?

我正处于用 C 编写基本代理服务器的最后一个主要障碍。

我的服务器成功地接收了来自浏览器的请求,然后成功地将它们发送到主机,无论它们在哪里。我也成功收到了楼主的回复!除了,这是我尝试通过服务器连接到 Google 时得到的结果:

你看到它是如何切断的吗?因为“传输编码:分块”。现在如何让服务器继续向我发送其余的块?因为在第一个之后,它就停止了。我是否需要将 read() 放入 while 循环中,并说只要有要阅读的内容就继续阅读并转发给客户端吗?

编辑:

好的,这是我现在的代码。这会首先读取服务器的响应(在名为“sock”的套接字上),将其写入客户端(“newsock”),然后进入一个 while 循环以继续读取更多服务器响应并将它们发送到客户端。我还没有测试过这种形式的代码。除了一些错误检查差距之外,您还看到任何明显的问题吗?

0 投票
3 回答
4428 浏览

ruby - Ruby 分块编码客户端

我正在尝试制作一个小红宝石脚本,它使用 HTTP 块传输编码接收流数据。所以我在这个客户端使用红宝石。我可以找到很多关于 ruby​​(和 rails)服务流的问题和信息,但关于使用它们的信息不多。也许是因为它微不足道,应该只是作为 HTTP 的低级功能。那么有人可以给我一个小示例脚本吗?

我尝试了几件事。这个使用open-uri:

...而这个使用 net http :

在这两种情况下,它都不会输出任何东西,我可以在 apache 中看到我的 php 脚本正忙于喷出越来越多的数据。我认为很明显这里出了什么问题。在这两种情况下,我认为我的脚本在处理它之前都在等待获得整个响应(这永远不会发生)。

我应该提到我的 php 脚本(服务器)可能有问题,但我可以看到它很好地将其块吹入 Firefox。

那么有没有一种简单的 ruby​​ 方法来流式传输数据?还是我应该期望需要特殊的宝石/库来做到这一点?(例如,我遇到了这个库

0 投票
1 回答
322 浏览

http - 由于分块或数据包丢失,捆绑/组合 js 文件是否有最大推荐大小?

所以我们都听说过将 javascript 和 css 捆绑到尽可能少的文件中是件好事。当然是这样,但在我看来,这个故事太简单了。

看看我的逻辑在这里是否有意义。

显然,更少的 HTTP 请求意味着更少的往返,因此更好。但是 - 我对裸 http 知之甚少 - 不是以块的形式发送 http 响应吗?如果一个文件大于其中一个块,它是否必须作为多个(可能是同步的?)往返下载?与此相反,由于现代 Web 浏览器并行下载诸如 javascripts 之类的资源,因此对分块大小以下文件的多个请求会更快到达。

即使分块不是问题,似乎也会有一些最大推荐大小,只是由于丢包的可能性,因为捆绑文件必须等到它完全下载才能执行,而不是脚本必须执行的更宽松的本机规则为了。

显然,还需要考虑浏览器缓存和代码波动的问题,但有人可以证实这一点或解释我为什么不在基地吗?有人有任何数字可以输入吗?