CHttpFile::QueryInfo
Appelez la fonction membre pour retourner la réponse ou les en-têtes de demande pour une requête HTTP.
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;
Paramètres
dwInfoLevel
Une combinaison de l'attribut à interroger et les balises suivantes qui spécifient le type d'informations demandées :HTTP_QUERY_CUSTOM recherche le nom d'en-tête et retourne cette valeur dans lpvBuffer sur la sortie. HTTP_QUERY_CUSTOM lève une assertion si l'en-tête est introuvable.
HTTP_QUERY_FLAG_REQUEST_HEADERS en général, l'application demande les en-têtes de réponse, mais une application peut également interroger des en-têtes de demande à l'aide de cette balise.
HTTP_QUERY_FLAG_SYSTEMTIME pour ces en-têtes dont la valeur est une chaîne de date/heure, telle que « heure de la dernière modification, » retourne de cet indicateur la valeur d'en-tête comme structure Win32 SYSTEMTIME de standard qui ne requiert pas l'application pour analyser les données. Si vous utilisez cette balise, vous pouvez utiliser la substitution d' SYSTEMTIME de la fonction.
HTTP_QUERY_FLAG_NUMBER pour ces en-têtes dont la valeur est un nombre, tel que le code d'état, des retours de cette balise les données sous la forme d'un nombre de 32 bits.
Consultez la section de Notes pour une liste des valeurs possibles.
lpvBuffer
Un pointeur vers une mémoire tampon qui accepte les informations.lpdwBufferLength
Lors de l'entrée, ces points à une valeur contenant la longueur de la mémoire tampon de données, en nombre de caractères ou des octets. Consultez la section de Notes pour plus d'informations sur les ce paramètre.lpdwIndex
Un pointeur vers un index de base zéro d'en-tête. Peut être NULL. Utilisez cette balise pour énumérer plusieurs en-têtes avec le même nom. Lors de l'entrée, lpdwIndex indique l'index de l'en-tête spécifié à retourner. Lors de la sortie, lpdwIndex indique l'index de l'en-tête. Si l'index est introuvable, ERROR_HTTP_HEADER_NOT_FOUND est retourné.str
Une référence à l'objet de CString recevant les informations retournées.dwIndex
Une valeur d'index. Consultez lpdwIndex.pSysTime
Un pointeur vers une structure Win32 SYSTEMTIME .
Valeur de retour
Une valeur différente de zéro si l'opération a réussi ; sinon 0. Si l'appel échoue, la fonction GetLastError Win32 peut être appelée pour déterminer la cause de l'erreur.
Notes
Utilisez cette fonction membre uniquement après un appel aboutit à SendRequest ou sur un objet d' CHttpFile créé avec succès par OpenURL.
Vous pouvez récupérer les types de données suivants d' QueryInfo:
chaînes (valeur par défaut)
SYSTEMTIME (pour les « données : » « Expire : » etc., en-têtes.)
DWORD (pour STATUS_CODE, CONTENT_LENGTH, etc..)
Lorsqu'une chaîne est écrite dans la mémoire tampon, et la fonction membre réussit, lpdwBufferLength contient la longueur de la chaîne de caractères moins 1 pour le caractère de fin de NULL .
Les valeurs possibles d' dwInfoLevel incluent :
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
Configuration requise
Header: afxinet.h