3

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

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

4

1 回答 1

2

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

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

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

于 2012-10-25T17:12:11.137 回答