documentation for WinHttpReadData说,关于HTTP's chunked transfer coding:
从WindowsVista和WindowsServer2008开始,WinHTTP允许应用程序对发送到服务器的数据执行分块传输编码。当传输编码头出现在winhttp响应上时,winhttpreaddata会在将数据提供给应用程序之前除去分块信息。
有人能破解这个吗?
问题1首先,此文本位于WinHttpReadData页上,该页用于…读取http客户端应用程序中的数据,特别是响应数据。那么当它说
从WindowsVista和WindowsServer2008开始,WinHTTP允许应用程序对发送到服务器的数据执行分块传输编码。
WinHttpReadData函数不用于将数据发送到服务器的情况。它在从服务器读取数据时使用。
consultingthe doc for the WinHttpWriteData function用于将数据作为http请求的一部分发送到服务器,但没有提到分块传输功能。
假设我弄清楚了新的分块传输支持是什么,我如何获得这种支持?它说它是vista和ws2008的新产品。如果我编写的应用程序运行在ws2003上,使用winhttpreaddata,但遇到分块响应或winhttpwritedata,并且它想要发送分块请求,会发生什么情况?
在这两行之间,这篇文档是说我需要链接vista时代windows sdk中的winhttp.lib,还是更高版本,以便获得执行分块编码的能力?或者在ws2003上真的不可能吗?,换句话说,使用此库执行分块传输的应用程序必须在指定的操作系统上运行?
这可能读起来像是在咆哮,但事实并非如此。我真的很想知道。
最佳答案
我的本地副本没有,对我来说是个错误。分块包含在this article,“传输编码头”部分。它应该是透明的。
关于http - Win32:WinHttpReadData中分块编码支持的状态是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2511929/