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 멤버는 종료 null 문자를 포함하지 않고 pUnknownVerb 멤버가 가리키는 문자열의 크기(바이트)를 포함합니다. 동사가HttpVerbUnknown과 같지 않으면 UnknownVerbLength는 0과 같습니다.
RawUrlLength
종료 null 문자를 포함하지 않고 pRawUrl 멤버가 가리키는 처리되지 않은 URL 문자열의 크기(바이트)입니다.
pUnknownVerb
동사 멤버가 HttpVerbUnknown인 pUnknownVerb과 같으면 이 요청에 대한 HTTP 동사가 포함된 null로 끝나는 octet 문자열을 가리킵니다. 그렇지 않으면 애플리케이션이 이 매개 변수를 무시합니다.
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
SSL(Secure Sockets Layer) 요청에 대한 원시 연결 ID입니다.
pSslInfo
요청이 수신된 연결에 대한 SSL(Secure Sockets Layer) 정보가 포함된 HTTP_SSL_INFO 구조체에 대한 포인터입니다.
설명
pRawUrl 멤버에 포함된 처리되지 않은 URL은 추적 및 통계 목적으로만 사용됩니다. 다른 용도로 , CookedUrl 멤버에 포함된 처리된 정식 URL을 사용합니다.
요구 사항
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
머리글 | http.h |