问题标签 [http-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 回答
457 浏览

http-post - Xamarin 表单 - 无法设置 HttpWebRequest 的 ContentLenght

我试图用 GET 和参数创建一个请求。但是,我遇到了 WinPhone8.1 的异常,这意味着由于添加了内容,GET 是违反协议的。因此,发出 POST 请求是解决方案。

尽管我进行了搜索,但我仍然无法设置 HttpWebRequest 的内容长度属性。为什么?

0 投票
1 回答
2883 浏览

http-content-length - HTTP 响应标头中未显示内容长度

接受范围:字节

缓存控制:max-age=1296915

连接:保活

内容编码:gzip

内容类型:应用程序/pdf

日期:2016 年 6 月 27 日星期一 07:24:58 GMT

ETag:“9c96c69837a1d11:0-gzip”

保活:超时=15,最大值=100

最后修改时间:2016 年 4 月 28 日星期四 10:20:32 GMT

服务器:阿帕奇

传输编码:分块

变化:接受编码

X-Powered-By:ASP.NET


我想在响应头中显示内容长度

0 投票
1 回答
7926 浏览

java - Spring RestTemplate 大文件 ContentLength 自动更改

有一个关于带有大文件的 RestTemplate 的问题。是否有最大内容长度和/或尽管已明确设置,但它是否会自动更改?

我有一个 5GB 的文件,我想通过 HTTP PUT 命令发送到我的 CDN (Akamai)。我已经将其设置如下(以避免 java 堆空间错误),但是我注意到执行命令时 Content-Length 会发生变化。

以及发送文件的调用:

Charles Proxy 报告 Content-Length 1469622184 并且当请求达到该长度时连接被终止。

Java 报错:

org.springframework.web.client.ResourceAccessException: I/O error on PUT request for "http://hidden.com/path/largefile.txt": too many bytes written;"

编辑:

当我像这样对 Content-Length 进行硬编码时,还有一些观察结果: headerValues.put("Content-Length", "3764589480"); Content-Length 字段实际上没有被发送,而是标题 Transfer-Encoding: chunked 被发送。

所以我进行了更多测试,结果如下:

硬编码内容长度:结果为 Charles

“1064589480”:发送内容长度:1064589480

“2064589480”:发送内容长度:2064589480

“3064589480”:删除内容长度,添加传输编码:分块

“3764589480”:删除内容长度,添加传输编码:分块

“4294967295”:删除内容长度,添加传输编码:分块

“4294967296”:发送内容长度:“0”,立即崩溃,写入的字节太多

“4764589480”:发送内容长度:“469622184”

“5764589480”:发送内容长度:“1469622184”

据我推断,在一定数量下,RestTemplate 将从 Content-Length 切换到 Transfer-Encoding。一旦它通过 4294967295,它开始再次将 Content-Length 传递回 0。对此我最好的解决方案是永远不要指定高于 4294967295 的值。如果它高于该阈值,则只需将其设置为 4294967295,RestTemplate 会将其更改为 Transfer -编码:无论如何都分块。是否存在某种溢出/精度点问题?

0 投票
1 回答
1738 浏览

python - 如何使用没有“Content-Length:0”的 Python requests 模块执行 HTTP DELETE 请求?

我正在使用 Python 请求模块执行 HTTP DELETE,但由于“Content-Length:0”,我的应用程序遇到了问题。有没有办法解决这个问题?是否可以删除“内容长度:0”?你有什么建议?

问题是服务器应用程序不接受“内容长度”,也不接受有效负载。这样,我的请求不应该有这些信息。

我正在做的请求:

0 投票
0 回答
374 浏览

java - 下载带有 contentLength 的 zip 文件 servlet

我正在尝试编写一个 servlet 以将文件下载为 zip,它将读取存储库 (CRX) 中的多个节点以获取多个图像的 Inputstream。

我正在使用 ZipOutputStream 下载 zip 文件。但由于不知道压缩后的长度,我无法设置 content-length 标头作为响应,因此浏览器无法显示剩余下载时间。

当前代码:

有没有办法生成 ZipFile 然后写入输出流?

0 投票
0 回答
1045 浏览

http - Http内容长度缺失和保持活动

我使用 Nginx + lua 模块和body_filter_by_lua指令。

Nginx-lua 文档

当 Lua 代码可能会更改响应正文的长度时,则需要始终清除标头过滤器中的 Content-Length 响应标头(如果有)以强制流式输出。

  1. 它会破坏keepalive连接吗?
  2. 它会破坏有问题的渠道的请求吗?
  3. 客户端如何知道数据已完全从服务器读取?
  4. 为什么 Nginx 不强制Transfer-Encoding: chunked执行此响应?

更新。

作为临时解决方案,我将响应转换为分块通过

在内容重写阶段


更新 2。

使用ngx.location.capture

0 投票
2 回答
90762 浏览

node.js - 如何使用 fetch 使用 multipart/form-data 标头和 FormData 进行 POST

这是一个运行良好的 CURL 示例:

我正在尝试使用isomorphic-fetch重现此请求。

我试过以下代码:

我使用fs.readFileSync以生成file传递给FormData.

前面的示例返回一个401HTTP 状态代码(未经授权),并带有一条错误消息,指出嵌入在令牌中(通过标头发送)与传递的 fromuserId不匹配。userIdformData

所以我怀疑FormData到达 REST API 的那个没有充分形成。

问题可能与Content-Length标头有关,但我没有找到更好的计算方法(如果我不使用Content-Length标头,我会收到411HTTP 状态代码Content-Length标头丢失)。

可能是由于Content-Length标头中的值不正确而导致失败的情况?

关于为什么失败或如何更好地调试它的任何其他建议?

如果需要进一步的信息来澄清这个问题,请询问。

更新

我已经尝试了表单数据模块,以便Content-Length使用该方法获得正确的值formData.getLengthSync()

但是问题仍然存在(401错误 HTTP 状态代码响应)。

0 投票
1 回答
882 浏览

php - 使用 PHP 下载 PDF --> ERR_CONTENT_LENGTH_MISMATCH

我想通过 PHP 从我的服务器下载 PDF,该 PDF 也是通过 PDF 上传的。虽然它适用于某些文件,但我收到以下有关单个文件的错误消息:

ERR_CONTENT_LENGTH_MISMATCH

这是我的下载功能:

如果我删除header("Content-Length: " .(string)(filesize($path)) ); 下载有效,但 PDF 文件随后损坏且无法打开。

路径正确,文件位于服务器上。所以上传工作..

我究竟做错了什么?

0 投票
1 回答
719 浏览

json - Is there a way to pass big json string in get request?

I have a big json string that I need to pass as string in get request but I get 404.

example data:

Is there a way to achieve this? (I cant use post..)

0 投票
0 回答
184 浏览

c# - 无法使用 C# 获取网页大小

在此处输入图像描述

专家们,

我正在使用下面的代码来获取文档大小,但由于浏览器分析器显示 200 KB 大小但我得到 50 KB,因此长度不正确。有人可以帮忙吗?

注意:内容长度返回 -1。