问题标签 [http-chunked]

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 回答
1839 浏览

mpmovieplayercontroller - 静态文件的 HTTP 实时流式传输到 iOS 设备

我试图了解HTTP Live Streaming将静态视频文件传输到 iOS 设备的“分块”方面。视频文件的分块发生在哪里?

编辑:从阅读HTTP Live Streaming和更多的https://datatracker.ietf.org/doc/html/draft-pantos-http-live-streaming-07听起来视频文件被分成了 .ts 段服务器。或者 m3u8 播放列表可以指定文件中的字节偏移量(显然使用EXT-X-BYTERANGE)。

以下是我在阅读Apple 的 HLS 描述https://datatracker.ietf.org/doc/html/draft-pantos-http-live-streaming-07后对这个过程的理解:

  • 我的服务器上有一个静态文件。它具有正确的音频/视频编码(H.264 和 AAC)。
  • 我会将m3u8播放列表传递给我的应用程序中的媒体播放器(MPMoviePlayer或类似播放器)。
  • 该应用程序将在媒体播放期间“重新加载索引”。换句话说,应用程序将请求额外的片段来播放。
  • 每 10 秒的片段位于一个MPEG 传输流容器中。

我对这个过程的理解是不完整的(也许是不正确的)。非常感谢任何其他信息。

0 投票
0 回答
957 浏览

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

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

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

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

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

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 回答
971 浏览

iphone - 如何使用分块编码上传数据?

我想通过分块传输编码上传音频数据。我的应用程序每 0.5 秒读取一次音频缓冲区。一旦我得到数据,我想使用分块编码将这些数据上传到服务器上。我也想保持连接打开。因此,0.5 秒后,当下一个缓冲区可用时,我可以在同一连接上上传这些数据。

我尝试过使用 NSMutableURLRequest 和 NSURLConncetion。但是,一旦我开始异步通信,控制权就会转到 iOS 并通知我的代表。我想使用相同的 NSURLConnection 上传更多数据。

我也尝试过使用 ASIHttpRequest。但我找不到定期提供数据并上传 vi http 分块的方法。

请让我知道您是否有任何使用与 iOS API 分块的传输编码上传数据的标准方法。

提前致谢。

0 投票
1 回答
4188 浏览

java - HTTP 多部分和分块可以共存吗?

我正在使用 apacheHttpClient将几个文件发布到服务器。这是代码:

问题是,MultipartEntity类只有isChunked()方法(总是返回 false),如果我希望为我的多部分实体启用卡盘编码,则没有“setChunked(boolean)”选项。

我的问题是:

  1. HTTP 多部分和分块可以根据协议规范共存吗?InputStreamEntity如果没有,为什么像class这样的其他实体有setChunked(boolean)whereMultipartEntity没有?

  2. 有没有办法在启用分块的情况下“一次”发布多个文件,最好是使用 apache 库?

0 投票
3 回答
7389 浏览

http - 如果 HTTP/1.0 客户端请求 Connection: keep-alive,它会理解分块编码吗?

如果我的 HTTP 服务器收到带有“Connection: keep-alive”标头的 HTTP/1.0 请求,那么客户端会理解“Transfer-Encoding: chunked”是否公平?

本质上,我正在尝试决定是否尊重来自 HTTP/1.0 客户端的“Connection: keep-alive”标头。如果我确实尊重它,那么我必须对回复使用分块编码,因为我无法缓冲整个回复以计算 Content-Length 标头。

如果期望请求“连接:保持活动”的 HTTP/1.0 客户端也能理解分块编码是不安全的,那么我将不得不在每次回复后关闭连接。(或者我错过了什么?)

0 投票
1 回答
651 浏览

java - 上传到 S3 的 Http 响应实体不是空的,而是像它一样

我正在尝试通过授权将文件上传到我的 Amazon S3 存储桶。我知道我的签名有效:使用与hurl.it相同的 url、标题和签名可以成功上传。

我也知道使用我的程序进行常规文件上传是有效的:如果我关闭 S3 安全性并删除标题,则上传工作正常。

还值得注意的是,我在 Android 模拟器上异步执行此操作。

生成的标题(使用 显示Log.e(TAG, allHeaders(httpResponse)))是:

响应状态码是400: Bad Request

所以奇怪的是我得到了这些标题,但是来自的内容流responseEntity.getContent()完全是空的——我没有进入 while 循环。

我也尝试切换到有HttpGet针对性的www.google.com,这完全没问题。

我对分块编码做错了吗?有什么明显的错误吗?

0 投票
0 回答
1620 浏览

asp.net - IIS 7.5 压缩和分块传输问题

我不得不渲染一个 json 提要。由于提要的大小约为 10 MB,因此我决定在 ASPNET 中启用压缩。我为 json mime 类型启用了动态压缩。压缩效果很好,并将大小减小到 1 MB(对使用的服务器 CPU 有显着的压缩优势)。

但奇怪的是,浏览器每次花费 2.6 分钟并失败,尽管我看到 JSON 在几秒钟内收到。

我尝试使用提琴手和检查工具进行调试。我看到分块传输编码作为响应。所以浏览器等待大约 150 秒来接收 0 大小的块来完成。

我不会在任何 json 服务中刷新响应。因此 IIS 在这种情况下启用了分块传输。关闭 enableChunkedEncoding 也无济于事。

如何使这种压缩工作或压缩+分块传输一起工作?

这是请求和响应标头。

请求标头

请求网址:http://localhost:8080/Default2.aspx

请求方法:GET

状态码:200 OK

接受编码:gzip、deflate、sdch

响应标头

内容编码:gzip

内容类型:应用程序/json;字符集=utf-8

传输编码:分块

编辑:有趣的是,当压缩响应 < 1 MB 时一切正常。当响应大于 1 MB 时,问题就会蔓延。我在这里创建了测试项目

提前致谢

0 投票
3 回答
29040 浏览

java - 逐块读取文件

我想逐个读取文件。该文件被分成几部分,存储在不同类型的媒体上。我目前所做的是调用文件的每个单独部分,然后将其合并回原始文件。

问题是我需要等到所有块都到达之后才能播放/打开文件。是否可以在块到达时读取它们,而不是等待它们全部到达。

我正在处理媒体文件(电影文件)。

0 投票
2 回答
4327 浏览

c - C解析HTTP Chunked传输编码响应

我正在开发一个需要解析 Chunked-type HTTP 传输的客户端。我已经把头撞在墙上,试图找出以下错误,如果有人能够更快地发现我的错误,我将不胜感激。总结一下这个问题:似乎客户端没有收到所有的块,从而搞砸了其余的过程。提前致谢!