struttura HTTP_REQUEST_V1 (http.h)
Usa la struttura HTTP_REQUEST per restituire i dati associati a una richiesta specifica.
Non usare HTTP_REQUEST_V1 direttamente nel codice; l'uso di HTTP_REQUEST garantisce invece che venga usata la versione corretta, in base al sistema operativo in cui viene compilato il codice.
Sintassi
typedef struct _HTTP_REQUEST_V1 {
ULONG Flags;
HTTP_CONNECTION_ID ConnectionId;
HTTP_REQUEST_ID RequestId;
HTTP_URL_CONTEXT UrlContext;
HTTP_VERSION Version;
HTTP_VERB Verb;
USHORT UnknownVerbLength;
USHORT RawUrlLength;
PCSTR pUnknownVerb;
PCSTR pRawUrl;
HTTP_COOKED_URL CookedUrl;
HTTP_TRANSPORT_ADDRESS Address;
HTTP_REQUEST_HEADERS Headers;
ULONGLONG BytesReceived;
USHORT EntityChunkCount;
PHTTP_DATA_CHUNK pEntityChunks;
HTTP_RAW_CONNECTION_ID RawConnectionId;
PHTTP_SSL_INFO pSslInfo;
} HTTP_REQUEST_V1, *PHTTP_REQUEST_V1;
Members
Flags
Una combinazione di zero o più dei valori di flag seguenti può essere combinata, con OR, in base alle esigenze.
ConnectionId
Identificatore della connessione in cui è stata ricevuta la richiesta. Usare questo valore quando si chiama HttpWaitForDisconnect o HttpReceiveClientCertificate.
RequestId
Valore usato per identificare la richiesta quando si chiama HttpReceiveRequestEntityBody, HttpSendHttpResponse e/o HttpSendResponseEntityBody.
UrlContext
Contesto associato all'URL nel parametro pRawUrl .
Windows Server 2003 con SP1 e Windows XP con SP2:
Version
Struttura HTTP_VERSION che contiene la versione di HTTP specificata da questa richiesta.
Verb
Verbo HTTP associato a questa richiesta. Questo membro può essere uno dei valori del
HTTP_VERB'enumerazione .
UnknownVerbLength
Se il membro Verb contiene un valore uguale a HttpVerbUnknown, il membro UnknownVerbLength contiene le dimensioni, in byte, della stringa a cui punta il membro pUnknownVerb , senza includere il carattere null di terminazione. Se Verb non è uguale a HttpVerbUnknown, UnknownVerbLength è uguale a zero.
RawUrlLength
Dimensioni, in byte, della stringa URL non elaborata a cui punta il membro pRawUrl , senza includere il carattere Null di terminazione.
pUnknownVerb
Se il membro Verb è uguale a HttpVerbUnknown, pUnknownVerb, punta a una stringa con terminazione Null di ottetti che contiene il verbo HTTP per questa richiesta; in caso contrario, l'applicazione ignora questo parametro.
pRawUrl
Puntatore a una stringa di ottetti che contiene l'URL originale non elaborato di destinazione della richiesta. Utilizzare questo URL non elaborato solo per scopi statistici o di rilevamento; Il membro CookedUrl contiene la forma canonica dell'URL per l'uso generale.
CookedUrl
Struttura HTTP_COOKED_URL che contiene una versione a caratteri wide canonica analizzata dell'URL di destinazione della richiesta. Si tratta della versione dei listener HTTP URL su cui agire, anziché sull'URL non elaborato.
Address
Struttura HTTP_TRANSPORT_ADDRESS che contiene gli indirizzi di trasporto per la connessione per la richiesta.
Headers
Struttura HTTP_REQUEST_HEADERS che contiene le intestazioni specificate in questa richiesta.
BytesReceived
Numero totale di byte ricevuti dalla rete che comprende questa richiesta.
EntityChunkCount
Numero di elementi nella matrice pEntityChunks . Se non è stato copiato alcun corpo dell'entità, questo valore è zero.
pEntityChunks
Puntatore a una matrice di strutture HTTP_DATA_CHUNK che contiene i blocchi di dati che costituiscono il corpo dell'entità. HttpReceiveHttpRequest non copia il corpo dell'entità a meno che non venga chiamato con il flag HTTP_RECEIVE_REQUEST_FLAG_COPY_BODY impostato.
RawConnectionId
ID di connessione non elaborato per una richiesta SSL (Secure Sockets Layer).
pSslInfo
Puntatore a una struttura HTTP_SSL_INFO che contiene informazioni SSL (Secure Sockets Layer) sulla connessione su cui è stata ricevuta la richiesta.
Commenti
L'URL non elaborato contenuto nel membro pRawUrl è destinato solo a scopi statistici e di rilevamento. Per altri scopi, usare l'URL canonico elaborato contenuto nel membro CookedUrl .
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Intestazione | http.h |