다음 예제에서는 주식 시세를 제공하는 간단한 서비스의 WSDL 정의를 보여 주어도 됩니다. 이 서비스는 HTTP를 통해 SOAP 1.1 프로토콜을 사용하여 배포되는 GetLastTradePrice라는 단일 작업을 지원합니다. 요청은 형식 문자열의 티커 기호를 취하고 가격을 float로 반환합니다. 이 정의에 사용된 요소에 대한 자세한 설명은 섹션 2(핵심 언어) 및 섹션 3(SOAP 바인딩)에서 찾을 수 있습니다. 요청/응답 또는 요청/응답은 WSDL 문서에서 논리적으로 상관 관계가 있지만 지정된 바인딩은 구체적인 상관 관계 정보를 설명합니다. 예를 들어, 요청 및 응답 메시지는 하나 또는 두 개의 실제 네트워크 통신의 일부로 교환될 수 있다. 이 예제에서는 SOAP 인코딩 대신 고정 된 XML 형식을 사용합니다(예를 들어 SOAP 인코딩을 사용하는 경우 예제 4 참조). 이 예제는 SOAP 1.1 HTTP 바인딩을 통해 GetTradePrice SOAP 1.1 요청을 StockQuote 서비스로 보낼 수 있음을 설명합니다. 요청은 주식 시세 기호 문자열, 시작 및 종료 시간을 포함하는 응용 프로그램 정의 TimePeriod 구조를 취하고 해당 기간 내에 서비스에 의해 기록 된 주가의 배열뿐만 아니라 로 기록 된 빈도를 반환합니다. 비누 응답. 이 서비스에 해당하는 RPC 시그니처는 매개 변수 티커 기호 및 timePeriod 다음에 출력 매개 변수 주파수를 가지고 있으며, floats의 배열을 반환합니다.

SOAP 요청과 함께 MIME 바인딩을 사용하는 경우 SOAP:body 요소를 MIME 요소로 사용하는 것이 합법적입니다. 콘텐츠 유형이 « 텍스트/xml »이며 둘러싸는 SOAP 봉투가 있음을 나타냅니다. 태그는 클라이언트 응용 프로그램과 웹 서버 간에 교환되는 메시지를 정의하는 데 사용됩니다. 이러한 메시지는 웹 서비스에서 수행할 수 있는 입력 및 출력 작업을 설명합니다. 메시지의 예로는 직원의 EmployeeID를 수락하는 메시지가 있을 수 있으며 출력 메시지는 제공된 EmpoyeeID를 기반으로 하는 직원의 이름일 수 있습니다. 파트는 메시지의 논리적 추상 적 내용을 설명하기 위한 유연한 메커니즘입니다. 바인딩은 부품에 대한 바인딩 관련 정보를 지정하기 위해 부품 이름을 참조할 수 있습니다. 예를 들어 RPC와 함께 사용할 메시지를 정의하는 경우 부품은 메시지의 매개 변수를 나타낼 수 있습니다. 그러나 부품의 실제 의미를 확인하려면 바인딩을 검사해야 합니다. SOAP:header를 사용하여 SOAP 봉투에 나타나는 모든 헤더를 철저히 나열할 필요는 없습니다.

예를 들어 WSDL에 대한 확장(섹션 2.1.3 참조)은 특정 헤더를 실제 페이로드에 추가해야 하며 여기에 이러한 헤더를 나열할 필요가 없음을 의미할 수 있습니다. 메시지의 일부는 추상 형식 정의 또는 구체적인 스키마 정의일 수 있습니다. 추상 정의인 경우 형식은 인코딩 스타일에 의해 정의된 일부 규칙 집합에 따라 직렬화됩니다. 각 인코딩 스타일은 SOAP 사양에서와 같이 URI 목록을 사용하여 식별됩니다. SOAP 인코딩(http://schemas.xmlsoap.org/soap/encoding/)과 같은 일부 인코딩 스타일은 주어진 추상 형식 집합에 대한 메시지 형식의 변형을 허용하므로 메시지 판독기에서 모든 형식 변형을 이해해야 합니다. 맞아 »라고 말했습니다. 모든 변형을 지원하지 않으려면 메시지를 구체적으로 정의한 다음 원래 인코딩 스타일(있는 경우)을 힌트로 나타낼 수 있습니다.

Catégories :