HTTP_REQUEST_V1 構造体 (http.h)
HTTP_REQUEST構造体を使用して、特定の要求に関連付けられているデータを返します。
コードで HTTP_REQUEST_V1 を直接使用しないでください。 代わりに HTTP_REQUEST を使用すると、コードがコンパイルされるオペレーティング システムに基づいて、適切なバージョンが確実に使用されます。
構文
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;
メンバー
Flags
次のフラグ値の 0 個以上の組み合わせは、必要に応じて OR と組み合わせることができます。
ConnectionId
要求を受信した接続の識別子。 この値は、 HttpWaitForDisconnect または HttpReceiveClientCertificate を呼び出すときに使用します。
RequestId
HttpReceiveRequestEntityBody、HttpSendHttpResponse、および/または HttpSendResponseEntityBody を呼び出すときに要求を識別するために使用される値。
UrlContext
pRawUrl パラメーターの URL に関連付けられているコンテキスト。
Windows Server 2003 SP1 と Windows XP SP2:
Version
この要求で指定された HTTP のバージョンを含む HTTP_VERSION 構造体。
Verb
この要求に関連付けられている HTTP 動詞。 このメンバーには、 の値のいずれかを指定できます。
列挙HTTP_VERB します。
UnknownVerbLength
Verb メンバーに HttpVerbUnknown と等しい値が含まれている場合、UnknownVerbLength メンバーには、pUnknownVerb メンバーが指す文字列のサイズ (バイト単位) が含まれ、終端の null 文字は含まれません。 Verb が HttpVerbUnknown と等しくない場合、UnknownVerbLength は 0 に等しくなります。
RawUrlLength
pRawUrl メンバーが指す未処理の URL 文字列のサイズ (バイト単位)。終端の null 文字は含まれません。
pUnknownVerb
Verb メンバーが HttpVerbUnknown、pUnknownVerb と等しい場合は、この要求の HTTP 動詞を含むオクテットの null で終わる文字列を指します。それ以外の場合、アプリケーションはこのパラメーターを無視します。
pRawUrl
この要求の対象となる元の未処理の URL を含むオクテットの文字列へのポインター。 この未処理の URL は、追跡または統計目的でのみ使用します。 CookedUrl メンバーには、一般的に使用する URL の正規形式が含まれています。
CookedUrl
この要求の対象となる URL の解析された標準ワイド文字バージョンを含む HTTP_COOKED_URL 構造体。 これは、生の URL ではなく、HTTP リスナーが処理する必要がある URL のバージョンです。
Address
この要求の接続のトランスポート アドレスを含む HTTP_TRANSPORT_ADDRESS 構造体。
Headers
この要求 で 指定されたヘッダーを含むHTTP_REQUEST_HEADERS構造体。
BytesReceived
この要求を構成するネットワークから受信した合計バイト数。
EntityChunkCount
pEntityChunks 配列内の要素の数。 エンティティ本文がコピーされなかった場合、この値は 0 です。
pEntityChunks
エンティティ本体を構成するデータ ブロックを含む HTTP_DATA_CHUNK 構造体の配列へのポインター。 httpReceiveHttpRequest は、HTTP_RECEIVE_REQUEST_FLAG_COPY_BODY フラグを設定して呼び出されない限り、エンティティ本体をコピーしません。
RawConnectionId
Secure Sockets Layer (SSL) 要求の未加工の接続 ID。
pSslInfo
要求が受信された接続に関する Secure Sockets Layer (SSL) 情報を含む HTTP_SSL_INFO 構造体へのポインター。
解説
pRawUrl メンバーに含まれる未処理の URL は、追跡と統計のみを目的としています。 その他の目的では、 CookedUrl メンバーに含まれる処理済みの正規 URL を使用します。
要件
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
Header | http.h |