3

这是一个愚蠢的问题,但我正在测试一个工具并且需要创建一个不寻常的情况。我想发出一个 POST 请求,将几兆字节的数据发送到 Web 服务器,但我不想设置 Content-Length。(如果设置为 0 或 -1 就可以了。)

HttpWebRequest 自动将 request.ContentLength 设置为 RequestStream 缓冲区的长度。有没有办法防止或规避这种情况?

4

1 回答 1

3

您可以使用分块编码发送 POST 请求而无需设置 Content-Length 标头。使用分块编码,您可以分段(或“块”)而不是单块发送数据。当您需要将数据发送到服务器但您不知道大小时,这很有用。

分块编码是RFC 2616定义的 HTTP 1.1 的一部分

.NET 提供了SendChunked 功能来支持这种情况

于 2013-05-02T23:47:13.420 回答