다음을 통해 공유


WS_DECODER_GET_CONTENT_TYPE_CALLBACK 콜백 함수(webservices.h)

메시지의 콘텐츠 형식을 가져옵니다.

구문

WS_DECODER_GET_CONTENT_TYPE_CALLBACK WsDecoderGetContentTypeCallback;

HRESULT WsDecoderGetContentTypeCallback(
  [in]           void *decoderContext,
  [in]           const WS_STRING *contentType,
  [in, optional] const WS_STRING *contentEncoding,
  [out]          WS_STRING *newContentType,
  [in, optional] WS_ERROR *error
)
{...}

매개 변수

[in] decoderContext

인코더 instance WS_CREATE_DECODER_CALLBACK 반환됩니다.

[in] contentType

인코딩된 메시지의 콘텐츠 형식입니다.

[in, optional] contentEncoding

인코딩된 메시지의 콘텐츠 인코딩입니다.

[out] newContentType

콜백은 여기서 새로 디코딩된 메시지의 콘텐츠 형식을 반환해야 합니다.

[in, optional] error

함수가 실패할 경우 추가 오류 정보를 저장할 위치를 지정합니다.

반환 값

반환 코드 설명
E_OUTOFMEMORY
메모리가 부족합니다.
E_INVALIDARG
하나 이상의 인수가 잘못되었습니다.
기타 오류
이 함수는 위에 나열되지 않은 다른 오류를 반환할 수 있습니다.

설명

콜백은 제공된 콘텐츠 형식이 예상과 일치하는지 확인한 다음 디코딩된 메시지의 콘텐츠 형식을 반환해야 합니다.

반환된 콘텐츠 형식은 다음에 콜백이 호출되거나 디코더가 해제될 때까지 유효한 상태를 유지해야 합니다.

콜백은 newContentType을 기본 채널에서 지원하는 것으로 설정해야 합니다. 예를 들어 SOAP 1.2 및 이진 인코딩을 사용하는 TCP 세션 채널의 경우 새 콘텐츠 형식은 항상 application/soap+msbinsession1이어야 합니다.

WS_HTTP_CHANNEL_BINDING 경우 콘텐츠 인코딩 매개 변수는 "Content-Encoding" HTTP 헤더 값으로 설정됩니다. 이 헤더가 없으면 NULL 이 전달됩니다.

다른 모든 채널 바인딩의 경우 콘텐츠 인코딩에 대해 NULL 이 전달됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 webservices.h