다음을 통해 공유


WS_HTTP_MESSAGE_MAPPING 구조체(webservices.h)

메시지 개체에서 HTTP 요청 또는 응답을 나타내는 방법에 대한 정보를 지정합니다.

구문

typedef struct _WS_HTTP_MESSAGE_MAPPING {
  ULONG                  requestMappingOptions;
  ULONG                  responseMappingOptions;
  WS_HTTP_HEADER_MAPPING **requestHeaderMappings;
  ULONG                  requestHeaderMappingCount;
  WS_HTTP_HEADER_MAPPING **responseHeaderMappings;
  ULONG                  responseHeaderMappingCount;
} WS_HTTP_MESSAGE_MAPPING;

멤버

requestMappingOptions

HTTP 요청의 정보가 메시지 개체에 매핑되는 방법을 제어하는 옵션입니다.

responseMappingOptions

HTTP 응답의 정보가 메시지 개체에 매핑되는 방법을 제어하는 옵션입니다.

requestHeaderMappings

HTTP 요청에 대한 메시지 개체의 헤더와 매핑되는 HTTP 헤더를 설명하는 매핑에 대한 포인터 배열입니다. 배열의 포인터는 NULL이 아닐 수 있습니다.

requestHeaderMappingCount

requestHeaderMappings 배열의 항목 수입니다.

responseHeaderMappings

HTTP 응답에 대한 메시지 개체의 헤더와 매핑되는 HTTP 헤더를 설명하는 매핑에 대한 포인터 배열입니다. 배열의 포인터는 NULL이 아닐 수 있습니다.

responseHeaderMappingCount

responseHeaderMappings 배열의 항목 수입니다.

설명

메시지에는 메시지 봉투의 일부가 아닌 추가 전송 관련 정보가 포함될 수 있습니다. 이 전송 관련 정보는 프로그래밍 방식으로 메시지 개체의 헤더로 노출될 수 있습니다.
이러한 헤더를 매핑된 헤더라고 합니다.

매핑된 각 헤더는 메시지 헤더에 일반 헤더 요소로 저장됩니다( WS_MESSAGE_PROPERTY_HEADER_BUFFER 참조). 빈 XML 네임스페이스("")는 매핑된 헤더에 사용됩니다.

이 구조체는 HTTP 요청 또는 응답과 메시지 개체의 매핑된 헤더 간에 매핑이 발생하는 방법을 지정합니다. 구조체는 WS_CHANNEL_PROPERTY_HTTP_MESSAGE_MAPPING 속성을 사용하여 지정할 수 있습니다.

다음 다이어그램에서는 HTTP 헤더가 메시지의 헤더에 매핑되는 방법을 보여 줍니다.

MyHeader 요소가 강조 표시된 Message 개체와 HTTP 요청에서 MyHeader 줄을 가리키는 화살표를 보여 주는 다이어그램

메시지가 수신되면 HTTP 채널은 요청 또는 응답에서 지정된 HTTP 헤더를 메시지 개체의 헤더에 자동으로 복사합니다. 그런 다음, 애플리케이션은 WsGetMappedHeader 를 사용하여 매핑된 헤더의 값을 가져올 수 있습니다.

메시지를 보내기 전에 애플리케이션은 WsAddMappedHeader를 사용하여 메시지 개체에 매핑된 헤더를 추가할 수 있습니다. 메시지를 보내면 HTTP 채널은 메시지 개체의 헤더에서 지정된 헤더를 자동으로 제거하고(봉투 안에 나타나지 않도록) HTTP 요청 또는 응답 헤더로 추가합니다.

HTTP 채널은 requestHeaderMappings 또는 responseHeaderMappings 필드에 지정된 HTTP 헤더에 대해서만 이 매핑을 수행합니다. WS_HTTP_HEADER_MAPPING 각 헤더를 지정하는 데 사용되며 메시지 헤더가 HTTP 헤더에서 변환되는 방법에 대한 지침을 포함합니다.

HTTP 헤더에 해당하지 않는 HTTP 요청 또는 응답의 다른 정보는 requestMappingOptions 또는 responseMappingOptions를 설정하여 메시지 개체의 헤더에 매핑할 수 있습니다. 그런 다음, 이러한 매핑된 값은 WsGetMappedHeader를 사용하여 추출할 수 있습니다.
메시지 헤더에 매핑할 수 있는 정보에 대한 자세한 내용은 WS_HTTP_REQUEST_MAPPING_OPTIONS 또는 WS_HTTP_RESPONSE_MAPPING_OPTIONS 참조하세요.

요구 사항

   
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
머리글 webservices.h