该函数返回与一个HTTP请求关联的信息头。
语法
C++
BOOL HttpQueryInfo(
__in HINTERNET hRequest,
__in DWORD dwInfoLevel,
__inout LPVOID lpvBuffer,
__inout LPDWORD lpdwBufferLength,
__inout LPDWORD lpdwIndex
);
参数
hRequest [in]
由HttpOpenRequest 或 InternetOpenUrl 函数返回的句柄。
dwInfoLevel [in]
lpvBuffer [in, out]
指向一个缓冲的指针,该缓冲接收请求的信息。该参数绝对不能为NULL。
lpdwBufferLength [in, out]
指向一个变量的指针,该变量包含lpvBuffer 参数指向的缓冲大小 。
当函数成功返回时,该变量包含了写入缓冲中的字节数。对于字符串,字节数量不包含结尾的NULL字符。
当函数以ERROR_INSUFFICIENT_BUFFER 而失败时,变量指向一个足够承载所需信息的缓冲。主调程序可以在之后利用再次对该函数的调用为缓冲分配足够的空间。
lpdwIndex [in, out]
指向一个基于零的头索引,它被用来枚举相同名字情况下多个头信息。当调用该函数时,该参数指定的头的索引。当函数返回时,该参数时下一个头的索引。如果下一个索引不能找到,则返回ERROR_HEADER_NOT_FOUND 。
返回值
如果成功,返回TRUE , 如果失败,返回FALSE。
备注
您可以利用该函数返回下列数据类型:
1、字符串(默认)
2、SYSTEMTIME(对于日期)
3、DWORD(对于STATUS_CODE, CONTENT_LENGTH等,如果使用了 HTTP_QUERY_FLAG_NUMBER 标识符)
如果你的应用程序要求返回非字符串的数据类型,你必须在dwInfoLevel 参数中包含恰当的修饰符。