问题标签 [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.
http-post - Xamarin 表单 - 无法设置 HttpWebRequest 的 ContentLenght
我试图用 GET 和参数创建一个请求。但是,我遇到了 WinPhone8.1 的异常,这意味着由于添加了内容,GET 是违反协议的。因此,发出 POST 请求是解决方案。
尽管我进行了搜索,但我仍然无法设置 HttpWebRequest 的内容长度属性。为什么?
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
我想在响应头中显示内容长度
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 -编码:无论如何都分块。是否存在某种溢出/精度点问题?
python - 如何使用没有“Content-Length:0”的 Python requests 模块执行 HTTP DELETE 请求?
我正在使用 Python 请求模块执行 HTTP DELETE,但由于“Content-Length:0”,我的应用程序遇到了问题。有没有办法解决这个问题?是否可以删除“内容长度:0”?你有什么建议?
问题是服务器应用程序不接受“内容长度”,也不接受有效负载。这样,我的请求不应该有这些信息。
我正在做的请求:
java - 下载带有 contentLength 的 zip 文件 servlet
我正在尝试编写一个 servlet 以将文件下载为 zip,它将读取存储库 (CRX) 中的多个节点以获取多个图像的 Inputstream。
我正在使用 ZipOutputStream 下载 zip 文件。但由于不知道压缩后的长度,我无法设置 content-length 标头作为响应,因此浏览器无法显示剩余下载时间。
当前代码:
有没有办法生成 ZipFile 然后写入输出流?
http - Http内容长度缺失和保持活动
我使用 Nginx + lua 模块和body_filter_by_lua
指令。
Nginx-lua 文档说
当 Lua 代码可能会更改响应正文的长度时,则需要始终清除标头过滤器中的 Content-Length 响应标头(如果有)以强制流式输出。
- 它会破坏keepalive连接吗?
- 它会破坏有问题的渠道的请求吗?
- 客户端如何知道数据已完全从服务器读取?
- 为什么 Nginx 不强制
Transfer-Encoding: chunked
执行此响应?
更新。
作为临时解决方案,我将响应转换为分块通过
在内容重写阶段
更新 2。
使用ngx.location.capture
!
node.js - 如何使用 fetch 使用 multipart/form-data 标头和 FormData 进行 POST
这是一个运行良好的 CURL 示例:
我正在尝试使用isomorphic-fetch重现此请求。
我试过以下代码:
我使用fs.readFileSync
以生成file
传递给FormData
.
前面的示例返回一个401
HTTP 状态代码(未经授权),并带有一条错误消息,指出嵌入在令牌中(通过标头发送)与传递的 fromuserId
不匹配。userId
formData
所以我怀疑FormData
到达 REST API 的那个没有充分形成。
问题可能与Content-Length
标头有关,但我没有找到更好的计算方法(如果我不使用Content-Length
标头,我会收到411
HTTP 状态代码Content-Length
标头丢失)。
可能是由于Content-Length
标头中的值不正确而导致失败的情况?
关于为什么失败或如何更好地调试它的任何其他建议?
如果需要进一步的信息来澄清这个问题,请询问。
更新
我已经尝试了表单数据模块,以便Content-Length
使用该方法获得正确的值formData.getLengthSync()
但是问题仍然存在(401
错误 HTTP 状态代码响应)。
php - 使用 PHP 下载 PDF --> ERR_CONTENT_LENGTH_MISMATCH
我想通过 PHP 从我的服务器下载 PDF,该 PDF 也是通过 PDF 上传的。虽然它适用于某些文件,但我收到以下有关单个文件的错误消息:
ERR_CONTENT_LENGTH_MISMATCH
这是我的下载功能:
如果我删除header("Content-Length: " .(string)(filesize($path)) ); 下载有效,但 PDF 文件随后损坏且无法打开。
路径正确,文件位于服务器上。所以上传工作..
我究竟做错了什么?
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..)