HTTP_LOG_FIELDS_DATA 構造体 (http.h)
HTTP_LOG_FIELDS_DATA構造体は、WC3 ログ記録が有効になっているときに HTTP 応答に対してログに記録されるフィールドを渡すために使用されます。
構文
typedef struct _HTTP_LOG_FIELDS_DATA {
HTTP_LOG_DATA Base;
USHORT UserNameLength;
USHORT UriStemLength;
USHORT ClientIpLength;
USHORT ServerNameLength;
USHORT ServiceNameLength;
USHORT ServerIpLength;
USHORT MethodLength;
USHORT UriQueryLength;
USHORT HostLength;
USHORT UserAgentLength;
USHORT CookieLength;
USHORT ReferrerLength;
PWCHAR UserName;
PWCHAR UriStem;
PCHAR ClientIp;
PCHAR ServerName;
PCHAR ServiceName;
PCHAR ServerIp;
PCHAR Method;
PCHAR UriQuery;
PCHAR Host;
PCHAR UserAgent;
PCHAR Cookie;
PCHAR Referrer;
USHORT ServerPort;
USHORT ProtocolStatus;
ULONG Win32Status;
HTTP_VERB MethodNum;
USHORT SubStatus;
} HTTP_LOG_FIELDS_DATA, *PHTTP_LOG_FIELDS_DATA;
メンバー
Base
このメンバーを、HTTP_LOG_DATA_TYPE列挙体の HttpLogDataTypeFields 値に初期化します。
UserNameLength
ユーザー名メンバーのサイズ (バイト単位)。
UriStemLength
URI ステム メンバーのサイズ (バイト単位)。
ClientIpLength
クライアント IP アドレス メンバーのサイズ (バイト単位)。
ServerNameLength
サーバー名メンバーのサイズ (バイト単位)。
ServiceNameLength
ServerIpLength
サーバー IP アドレス メンバーのサイズ (バイト単位)。
MethodLength
HTTP メソッド メンバーのサイズ (バイト単位)。
UriQueryLength
URI クエリ メンバーのサイズ (バイト単位)。
HostLength
ホスト名メンバーのサイズ (バイト単位)。
UserAgentLength
ユーザー エージェント メンバーのサイズ (バイト単位)。
CookieLength
Cookie メンバーのサイズ (バイト単位)。
ReferrerLength
参照元メンバーのサイズ (バイト単位)。
UserName
ユーザーの名前です。
UriStem
URI ステム。
ClientIp
クライアントの IP アドレス。
ServerName
サーバーの名前。
ServiceName
サービスの名前。
ServerIp
サーバーの IP アドレス。
Method
HTTP メソッド。
UriQuery
URI クエリ。
Host
要求からのホスト情報。
UserAgent
ユーザー エージェント名。
Cookie
アプリケーションによって提供される Cookie。
Referrer
参照元。
ServerPort
サーバーのポート。
ProtocolStatus
プロトコルの状態。
Win32Status
win32 の状態。
MethodNum
メソッド番号。
SubStatus
サブ状態。
注釈
HTTP_LOG_FIELDS_DATA構造体は、HTTP バージョン 2.0 API 以降の HttpSendResponseEntityBody 関数と HttpSendHttpResponse 関数の省略可能なパラメーター (pLogData) です。 HTTP_LOG_FIELDS_DATA構造体は、応答に記録されるフィールドを指定します。
この構造が渡されない限り、URL グループまたはサーバー セッションでサーバー ログ プロパティが設定されている場合でも、応答はログに記録されません。 アプリケーションが各応答で HTTP_LOG_FIELDS_DATA 構造を渡し、サーバー セッションまたは URL グループでログ記録プロパティを設定しない限り、要求はログに記録されません。 HTTP_LOG_FIELDS_DATA構造体のほとんどのフィールドは、HTTP_REQUEST構造体の対応するフィールドから初期化できますが、一部のログ フィールドはアプリケーションでのみ認識されます。たとえば、Win32Status や SubStatus などです。 この構造により、アプリケーションはログに記録されるフィールドを変更できます。 アプリケーションは、対応するメンバーの NULL ポインターと長さ 0 を渡して、そのフィールドのログ記録を無効にします。
アプリケーションは、最後の送信呼び出 しでHTTP_LOG_FIELDS_DATA 構造を提供する必要があります。 HttpSendHttpResponse への 1 回の呼び出しで応答が送信される場合は、この呼び出しでログ データを指定する必要があります。 応答が複数の送信呼び出しで送信される場合は、 HttpSendResponseEntityBody の最後の呼び出しでデータを指定する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
Header | http.h |