即使WinHTTP格式不正确,也要检索HTTP响应

时间:2012-10-17 16:55:21

标签: http winapi winhttp

使用WinHTTP,如果HTTP标头出现问题,WinHttpReceiveResponse将返回ERROR_WINHTTP_INVALID_SERVER_RESPONSE。

无论如何都要获取返回的数据,尽管它的格式错误了吗?

1 个答案:

答案 0 :(得分:2)

直接方法是在这种情况下绕过WinHTTP API并使用套接字进行“原始”读取,并尽力尝试解释响应头。

如果可以找到匹配content-length的行,即使标题无效,您也可能至少能够获取所有数据。要尝试这种方法,请在调试器中运行代码并查看Web服务器实际发送的内容,或者尝试捕获数据包流并查看第一个数据包以查找原始字节。

显然,结果将取决于响应的实际问题。