问题标签 [content-length]

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

php - HTTP Content-Length 标头的 1 字节太多

我正在编写一个(PHP)脚本,为客户端提供文件。其中,Content-Length 标头被发送,只是它有一个字节太多。当我将内容长度放在不同的标头中时,我发现了这一点,并比较了两者:

结果:

即使硬编码3480header()函数中,结果也是如此。我怀疑 Apache 对我的标题这样做了。

这可能是什么原因造成的?

编辑:给出一些上下文:我认为 Zend Framework 导致了这个:我正在将当前正在生产(和工作)的代码重构到出现问题的 ZF。当我在 ZF 之外尝试这段代码时,一切都很好。也许 ZF 正在做输出缓冲,并重新发送标头本身或其他东西,但我不太了解 ZF。

0 投票
1 回答
1018 浏览

iis-7 - IIS 7 动态压缩:这会使 Content-Length 标头不可预测吗?

在 Windows 2008 R2 上的 IIS 7.5 上使用 .NET 4.0。

我想输出代表各种类型文档(图像、PDF、Office 文件等)的二进制内容。假设整个内容已经在 MemoryStream 中,我想通过以下方式输出它:

上面的代码不可靠。经常有文件损坏。使用各种浏览器的客户端,有时会中止下载,有时会下载不可读的文件。损坏的可能性随着文件大小的增加而增加。使用 fiddler,我们发现响应头报告的内容长度与原始文件大小不同。因此,为了快速测试,我们注释掉了 Response.AddHeader("Content-Length" ...) 行,损坏问题就消失了。

Q1:这个问题是由动态压缩(IIS7默认启用)引起的吗?

Q2:如果对 Q1 的回答是肯定的,那么有没有什么优雅的解决方案可以通知客户有关 Content-Length 的信息?

Q3:删除“Content-Length”标头似乎会影响客户端将文件另存为的能力。示例:“Content-Disposition”,以 fileNameSaveAs = “一二三.pdf”初始化。使用 Firefox,在接收文件时,下载对话框默认为“One”作为文件名。这是正常的后果吗?

提前感谢您的帮助。

0 投票
0 回答
184 浏览

php - 如何在下载之前(远程下载时)检测文件的大小?

可能重复:
如何在 php 中使用 file_put_contents() 检测完成?

我正在用 PHP 制作下载脚本。如下:

下载工作正常(我收到文件)但第 2 行不起作用。 我想在下载之前检测文件大小。

还是有另一种更好的远程下载方式?

0 投票
2 回答
1856 浏览

php - 来自 php 的 content-length 标头被覆盖!

我试图弄清楚为什么 php 的 Content-Length 标头会被覆盖。这是 demo.php

获取标头的请求

见内容长度?它最大为 2147483647 字节,即 2GB。

现在如果像这样修改demo.php

标题不会被覆盖。

这是加载的模块

这是一个 phpinfo() : http: //pastehtml.com/view/b0z02p8zc.html

Apache 确实支持超过 2GB 的文件,因为我直接访问大文件没有任何问题:

这是一个 unname -a

希望有人能帮忙!

干杯

0 投票
1 回答
3307 浏览

java - 如何将 HTTPServer 配置为使用内容长度而不是传输编码:分块?

我将 java 的 HTTP Server 对象与 WebServiceProvider 实现的 Web 服务一起使用。我看到无论客户请求如何,答案都是分块的,我需要它具有内容长度。所以我假设问题出在服务器上,而不是网络服务器提供商,对吧?以及如何配置 http 标头以使用内容长度而不是分块?

0 投票
3 回答
1914 浏览

http - Content-length 是知道何时完全接收到 HTTP 消息的唯一方法吗?

我通常考虑通过 TCP 为自己的目的编写一个协议,并遇到了确定消息结尾的问题。

从 HTTP 派生,我可以看到 Content-length 中提到了消息长度,并且可能是确定消息已完全接收的方法。这是唯一的方法吗?如果缺少此标头会发生什么,因为 AFAIK 标头在 HTTP 消息中是可选的。

谢谢。

0 投票
3 回答
23173 浏览

java - Java、HttpURLConnection 和设置内容长度

我正在为 PUT 设置 HttpURLConnection 中内容的长度。

实际字节数为 74。但是,当我查询urlConnectionI'm returned的内容长度时-1。这是为什么?为什么长度不相等(鉴于我设置了这个)?

我必须设置内容长度,因为我正在接收411来自服务器的响应。

(此外,在 Sun 的示例中,我看到了setRequestPropertyis 类型int和 not的第二个参数String,这看起来很奇怪。)

0 投票
1 回答
221 浏览

php - 用 PHP 编写的自定义 CMS,我应该向客户端发送 HTTP 内容长度标头吗?

我在我们的 Intranet 上构建了一个自定义内容管理系统,它允许我们更新我运营的多个站点的新闻文章和内容。它似乎运作良好。

但是前几天我突然想起在网站上输出文章时我没有发送 HTTP 内容长度标头。我使用数据库中文章的修改日期发送 last-modified。

只是想知道我是否还应该在将整个页面发送到客户端之前计算整个页面的内容长度?发送内容长度标头是否是最佳实践,或者它是否有任何显着的搜索引擎优势?

干杯,B

0 投票
0 回答
81 浏览

http - HTTP:图片未完全接收。如何避免这种情况,即强制浏览器重试?

我写了一个小图片脚本,它显示了带有缩略图的目录列表以及图片的预览。

在某些情况下,当您单击多个图像预览时(您也可以使用左/右箭头键更快地执行此操作),某些图像不会完全加载(并且它们仅部分显示)。

我认为自从我预加载接下来的几张图片以来,这已经开始出现得更频繁了,但它之前也出现过。如果您非常快速地切换图像,这种情况也最常发生。

我想知道为什么会出现这种情况以及如何避免这种情况。我猜浏览器以某种方式失去了与服务器的一些连接(或者服务器由于某种原因意外关闭了它)。因此,我尝试通过设置来解决这个问题Content-Length(我希望如果文件没有完全接收到浏览器会自动重新连接),但这并没有帮助。

此外,在浏览器中,页面的正常重新加载没有帮助,我必须强制完全重新加载。

0 投票
2 回答
2818 浏览

http - 如何在 HTTP 协议中配置“Content-Length”标头

我不清楚如何计算 HTTP 中的“Content-Length”标头。

举个例子,

这是一个发送空 HTML 页面的有效 http 请求(如果有任何问题,请纠正我 :-))。那么内容的长度应该是多少呢?15 还是 17(考虑标题和发送实体之间的空行)?

提前致谢。最好的祝福。