Share via


XML Web services 통신 형식

DCOM과 같은 이진 프로토콜은 전용 통신 프로토콜의 맨 위에 있는 메서드 요청 계층을 구성합니다. 이러한 프로토콜은 범용 XML Web services를 만드는 데 도움이 되지 않습니다. XML Web services 시나리오에서 이러한 프로토콜을 사용하는 것을 금지하지는 않지만 이러한 프로토콜은 내부 시스템의 특정 아키텍처를 사용하므로 클라이언트 범위가 제한된다는 단점이 있습니다.

대신 HTTP 및 SOAP 조합과 같은 하나 이상의 개방형 프로토콜을 사용하는 XML Web services를 생성할 수 있습니다. 프로토콜마다 지원에 필요한 인프라가 다릅니다.

XML Web services는 단순히 RPC(원격 프로시저 호출) 액세스만을 제공하기 위한 것이 아니며, 구매 주문서, 송장 등과 같은 구조적 정보를 교환하고 내부/외부 비즈니스 프로세스를 자동화 및 연결할 수 있습니다.

HTTP-GET 및 HTTP-POST

HTTP-GET 및 HTTP-POST는 HTTP(Hypertext Transfer Protocol) 동사 및 해당 요청 의미 체계를 사용하여 매개 변수를 이름/값 쌍으로 인코딩하고 전달하는 표준 프로토콜입니다. 각각은 서버에서 요청하는 클라이언트, HTTP 응답 헤더에 대한 응답, 요청된 데이터 등을 정의하는 HTTP 요청 헤더로 구성됩니다.

HTTP-GET은 MIME 형식의 application/x-www-form-urlencoded를 사용하여 해당 매개 변수를 URL로 인코딩된 텍스트 형태로 전달하며 이 텍스트는 요청을 처리하는 서버의 URL에 추가됩니다. URL 인코딩은 전달된 매개 변수를 적합한 텍스트로 구성하는 문자 인코딩 형식으로, 예를 들어 공백을 %20으로 인코딩합니다. 이렇게 추가된 매개 변수를 쿼리 문자열이라고도 합니다.

HTTP-GET과 마찬가지로 HTTP-POST 매개 변수 역시 URL로 인코딩됩니다. 그러나 이름 값 쌍이 URL의 일부로 전달되지 않고 실제 HTTP 요청 메시지 내에 포함되어 전달됩니다.

SOAP

SOAP는 구조화된 정보 및 형식 정보를 웹에서 교환하는 데 사용되는 간단한 XML 기반 프로토콜입니다. 디자인 관점에서 SOAP의 최종 목표는 가능한 간단하게 유지하고 최소의 기능만 제공하는 것입니다. 이 프로토콜은 응용 프로그램 또는 전송 의미 체계를 포함하지 않는 메시징 프레임워크를 정의합니다. 따라서 프로토콜이 모듈식이며 확장성이 우수합니다.

SOAP는 표준 전송 프로토콜을 통해 통신하므로 인터넷의 기존 개방형 아키텍처를 활용할 수 있으며, 대부분의 기본 인터넷 표준을 지원하는 모든 시스템에서 쉽게 수용할 수 있습니다. SOAP 호환 XML Web services를 지원하는 데 필요한 인프라는 기존의 인터넷 인프라에 비해 규모가 작으며 SOAP로 작성된 서비스에 대한 범용 액세스를 지원하므로 간소하면서도 강력합니다.

SOAP 프로토콜 사양은 크게 네 부분으로 구성됩니다. 첫 번째 부분에서는 데이터 캡슐화를 위한 필수 확장형 봉투를 정의합니다. SOAP 봉투는 SOAP 메시지를 정의하며 SOAP 메시지 프로세서 간의 기본 교환 단위입니다. 이 부분은 이 사양의 유일한 필수 부분입니다.

SOAP 프로토콜 사양의 두 번째 부분에서는 응용 프로그램 정의 데이터 형식 및 그래프를 나타내는 선택적 데이터 인코딩 규칙과 비문장 데이터 모델 serialize를 위한 단일형 모델을 정의합니다.

세 번째 부분에서는 RPC 스타일(요청/응답) 메시지 교환 패턴을 정의합니다. 각 SOAP 메시지는 단방향 전송입니다. SOAP의 루트는 RPC 형식이지만 요청/응답 메커니즘으로 제한되지 않습니다. XML Web services는 해당 패턴을 구현하기 위해 SOAP 메시지를 결합하는 경우도 있지만, SOAP에서는 메시지 교환 패턴이 필요하지 않으며, 이 부분의 사양은 선택적 요소입니다.

사양의 네 번째 부분에서는 SOAP와 HTTP 간의 바인딩을 정의합니다. 이 부분 역시 선택적 요소입니다. SOAP는 SMTP, FTP, 플로피 디스크 등과 같이 SOAP 봉투를 전송할 수 있는 모든 전송 프로토콜 또는 메커니즘과 함께 사용할 수 있습니다.

SOAP 사양에 대한 자세한 내용은 W3C 웹 사이트(http://www.w3.org/TR/soap)를 참조하십시오.

참고 항목

개념

XML Web services 인프라

Footer image

Copyright © 2007 by Microsoft Corporation. All rights reserved.