如何计算内容长度,例如:
POST /Upload/ HTTP/1.1
Host: test.lan
User-Agent: Shockwave Flash
Connection: Keep-Alive
Cache-Control: no-cache
Accept: text/*
Content-Length: ?????
Content-Type: multipart/form-data; boundary=----------------------------4d2179e6b3c0
------------------------------4d2179e6b3c0
Content-Disposition: form-data; name="Filename"
phpinfo.php
------------------------------4d2179e6b3c0
Content-Disposition: form-data; name="ASPSESSID"
6e223eb1c7561e9c599f03cc04e9444b
------------------------------4d2179e6b3c0
Content-Disposition: form-data; name="Filedata"; filename="phpinfo.php"
Content-Type: application/octet-stream
<? phpinfo(); ?>
------------------------------4d2179e6b3c0
Content-Disposition: form-data; name="Upload"
Submit Query
------------------------------4d2179e6b3c0--
内容长度
值应通过合计消息头终止后的所有数据来计算。在您的示例中,这是这一点之后的所有内容(为了可读性,包含CRLF
字符):
...
Content-Length: ?????\r\n
Content-Type: multipart/form-data; boundary=--------------------4d2179e6b3c0\r\n
\r\n
第一个空行(\r\n
)之后的所有内容(包括边界分隔符)都应计入总长度。实际上,这通常意味着您需要在生成完整的消息实体正文后,将内容长度
标题值制成表格。一旦你有了完整的消息正文,你就可以在它前面加上你的头来创建完整的HTTP消息。
根据HTTP规范,您在技术上不需要指定内容长度
标题。从RFC 2616 14.13:
应用程序应使用此字段指示消息正文的传输长度,除非第4.4节中的规则禁止这样做。
但是,对于大多数服务器来说,这是一个相当标准的要求,如果内容长度
丢失或指定不正确,通常会发回错误响应。
修改controller 修改src/AppBundle/Controller/BlogController.php,把BlogController类的showAction改成: public function showAction($blogId) { $this->blogPostRepository = $this->getDoctrine()->getRe
我试图计算http post请求的请求体的内容长度,但我不断得到错误,表明内容长度错误。请求正文如下所示: 我尝试了两种解决方案,比如将正文的内容连接成一个字符串,比如following,然后将其转换成字节数组并发送其长度,但没有成功。 帖子请求正文是x-wow-form-urlencoded格式,内容长度必须正确计算。任何帮助都很感激,谢谢。
问题内容: 此处的答案(原始响应的大小(以字节为单位))表示: 只需考虑响应的内容: 但是,这样做不能获得准确的内容长度。例如,查看以下python代码: 如果我们尝试手动计算内容长度并将其与标头中的内容进行比较,则会得到更大的答案? 为什么不返回正确的内容长度?如果缺少标题,我们如何准确地手动计算呢? 问题答案: 的报头反映了响应的主体中。这与or属性的长度不同,因为响应可以被 压缩 。为您解压
问题内容: 我正在尝试使用连接服务器,但是PUT方法存在问题。 我需要发送一个包含 1500个字符 (或更多)的字符串,但是在这种情况下,服务器会产生超时并返回 500个服务器内部错误 。 如果我发送的字符串少于 1400个字符 ,则没有问题,服务器返回 OK 。 我的代码如下: // ----------------------- 我尝试添加线 但是服务器的答案还是错误的。 更新: 我可以发现问
问题内容: 我使用node.js并在一个小项目中表达。我将响应头设置为打击: 我可以使用打印数据的长度为317。 但是在浏览器的控制台上,我得到了这些: 连接:keep-alive 内容编码:gzip 内容类型:文本/纯文本; charset = utf- 8日期 :2013年6月1日星期六,08 :21:59 GMT 传输编码:块状 变化:接受编码 X-Powered-作者:快递 那么,为什么
使用指南 - 数据报告 - 流量分析 - 访问时长的计算 访问时长指访客每次在网站访问所停留的时长,即从进入第一个页面到离开最后一个页面的时长。 在传统统计工具下,最后一个页面的关闭时间很难得到,百度统计在技术上进行了升级,能够获取到该页面的关闭时间。 然而用户行为具有多样性,当用户快速关闭浏览器、长时间未对页面进行操作或其它网络原因导致的时候,系统会无法获取到页面的关闭信息,从而使最后一个页面的