最近,在进行Http协议下的WinInet编程,出现了不少问题。自己在解决这些问题的同时,觉得有必要将一些问题与大家分享一下。这里讲一下CHttpFile获取请求头信息要注意的几个问题。
用MFC的WinInet封装类编程,如果想要获取请求头信息,按MSDN的说法是:在CHttpFile对象成功调用SendRequest函数后,再调用QueryInfo函数即可获得请求头信息。CHttpFile类的QueryInfo函数主要有以下几个:
第一个:
BOOL QueryInfo(
DWORD dwInfoLevel,
LPVOID lpvBuffer,
LPDWORD lpdwBufferLength,
LPDWORD lpdwIndex = NULL
) const;
第二个:
BOOL QueryInfo(
DWORD

在使用MFC的WinInet封装类进行Http协议编程时,获取请求头信息是一个常见任务。CHttpFile的QueryInfo函数是关键,但需要注意其不同参数设置可能导致的问题。正确做法是在SendRequest成功后,利用QueryInfo函数,传入HTTP_QUERY_FLAG_REQUEST_HEADERS|HTTP_QUERY_RAW_HEADERS_CRLF作为dwInfoLevel,来获取请求头信息。同样,设置dwInfoLevel为HTTP_QUERY_RAW_HEADERS_CRLF可以获取响应头信息,此时两个QueryInfo函数皆可适用。

854

被折叠的 条评论
为什么被折叠?



