CHttpFile::QueryInfo
Rufen Sie die Memberfunktion auf, um Antwort oder Anforderungsheader aus einer HTTP-Anforderung zurückzugeben.
BOOL QueryInfo(
DWORD dwInfoLevel,
LPVOID lpvBuffer,
LPDWORD lpdwBufferLength,
LPDWORD lpdwIndex = NULL
) const;
BOOL QueryInfo(
DWORD dwInfoLevel,
CString& str,
LPDWORD dwIndex = NULL
) const;
BOOL QueryInfo(
DWORD dwInfoLevel,
SYSTEMTIME* pSysTime,
LPDWORD dwIndex = NULL
) const;
Parameter
dwInfoLevel
Eine Kombination des Attributs abzufragen und die folgenden Flags, die den Typ von Informationen angefordert angeben:HTTP_QUERY_CUSTOM sucht Headernamen und gibt diesen Wert in lpvBuffer auf Ausgabe zurück.HTTP_QUERY_CUSTOM löst eine Assertion aus, wenn der Header nicht gefunden wird.
HTTP_QUERY_FLAG_REQUEST_HEADERS in der Regel, die Anwendung fragt die Antwortheader ab, aber eine Anwendung kann auch Anforderungsheader abfragen, indem Sie dieses Flag verwendet.
HTTP_QUERY_FLAG_SYSTEMTIME für diese Header, deren Wert eine Datum/Uhrzeit-Zeichenfolge, wie "Zeitpunkt der letzten Änderung," gibt dieses Flags der Headerwert als Struktur Standard Win32 SYSTEMTIME ist, die die Anwendung nicht erforderlich, die Daten zu analysieren.Wenn Sie dieses Flag verwenden, sollten Sie die SYSTEMTIME Überschreibung der Funktion verwenden.
HTTP_QUERY_FLAG_NUMBER für diese Header, deren Wert eine Zahl, wie der Statuscode, gibt dieses Flags die Daten als 32-Bit-Zahl ist.
Siehe den Abschnitt Remarks für eine Liste der möglichen Werte.
lpvBuffer
Ein Zeiger auf den Puffer, der die Informationen abruft.lpdwBufferLength
Bei einem Eintrag zeigt dies zu einem Wert, der die Länge des Datenpuffers, in Anzahl von Zeichen oder Bytes der enthält.Siehe den Abschnitt für Remarks ausführlichere Informationen zu diesen Parameter.lpdwIndex
Ein Zeiger auf einen nullbasierten Headerindex.Kann NULL.Verwenden Sie dieses Flag, um mehrere Header mit dem gleichen Namen aufzulisten.Bei Eingabe lpdwIndex gibt den Index des angegebenen Headers an, um zurückzukehren.Bei Ausgabe lpdwIndex gibt den Index des folgenden Headers an.Wenn der folgende Index nicht gefunden wird, wird ERROR_HTTP_HEADER_NOT_FOUND zurückgegeben.str
Ein Verweis auf CString-Objekt, das die zurückgegebenen Informationen empfängt.dwIndex
Ein Indexwert.Siehe lpdwIndex.pSysTime
Ein Zeiger auf eine Struktur Win32 SYSTEMTIME.
Rückgabewert
Ungleich 0 (null), wenn erfolgreich; 0 andernfalls.Wenn der Aufruf fehlschlägt, wird die GetLastError Win32-Funktion aufgerufen werden, um die Fehlerursache zu bestimmen.
Hinweise
Verwenden Sie diese Memberfunktion erst nach einem erfolgreichen Aufruf SendRequest oder auf einem CHttpFile-Objekt, das erfolgreich durch OpenURL erstellt wird.
Sie können die folgenden Typen von Daten aus QueryInfo abrufen:
Zeichenfolgen (Standard)
SYSTEMTIME (für "Daten: " "Läuft ab: " usw., Header).
DWORD (für STATUS_CODE, CONTENT_LENGTH, usw..).
Wenn eine Zeichenfolge in den Puffer geschrieben wird und die Memberfunktion folgt, enthält lpdwBufferLength die Länge der Zeichenfolge in Zeichen minus 1 für das abschließende NULL Zeichen.
Das mögliche dwInfoLevel Zu den Werten zählen:
HTTP_QUERY_MIME_VERSION
HTTP_QUERY_CONTENT_TYPE
HTTP_QUERY_CONTENT_TRANSFER_ENCODING
HTTP_QUERY_CONTENT_ID
HTTP_QUERY_CONTENT_DESCRIPTION
HTTP_QUERY_CONTENT_LENGTH
HTTP_QUERY_ALLOWED_METHODS
HTTP_QUERY_PUBLIC_METHODS
HTTP_QUERY_DATE
HTTP_QUERY_EXPIRES
HTTP_QUERY_LAST_MODIFIED
HTTP_QUERY_MESSAGE_ID
HTTP_QUERY_URI
HTTP_QUERY_DERIVED_FROM
HTTP_QUERY_LANGUAGE
HTTP_QUERY_COST
HTTP_QUERY_WWW_LINK
HTTP_QUERY_PRAGMA
HTTP_QUERY_VERSION
HTTP_QUERY_STATUS_CODE
HTTP_QUERY_STATUS_TEXT
HTTP_QUERY_RAW_HEADERS
HTTP_QUERY_RAW_HEADERS_CRLF
Anforderungen
Header: afxinet.h