如何通过使用WinHttpQueryHeader()
函数找出响应是否是从代理或终端服务器发送的?我试过使用WINHTTP_QUERY_PROXY_AUTHENTICATE
作为参数dwInfoLevel
参数winHttpQueryHeader()
,但是我得到的缓冲区是NULL。使用WinHttpQueryHeader()从代理读取响应
int bufferSize = 0;
char lpOutBuffer[500];
ReturnVal = WinHttpQueryHeader(Handle, WINHTTP_QUERY_PROXY_AUTHENTICATE, NULL, &bufferSize);
ReturnVal= WinHttpQueryHeader(Handle, WINHTTP_QUERY_PROXY_AUTHENTICATE, lpOutBuffer, &bufferSize);
lpOutBuffer
为NULL。
其实我觉得这里的问题是,我在第一时间拿到WinHttpQueryHeader
的bufferSize
0等第二WinHttpQueryHeader
没有填满lpOutBuffer
(因为bufferSize
为0)。为什么bufferSize
返回为0?
与此相反,如果我使用InfoLevel
为WINHTTP_QUERY_RAW_HEADERS_CRLF
,我得到正确的输出和bufferSize
不为0,它获得的第WinHttpQueryHeader()
调用后充满..