주요 차이점 : SOAP은 Simple Object Access Protocol의 약자입니다. SOAP 웹 서비스는 SOAP 및 ws- * 사양을 기반으로합니다. REST (Representational State Transfer)라는 용어는 Roy Fielding이 작성했습니다. HTTP 및 REST의 개념과 원칙을 사용하여 구현되는 웹 응용 프로그램 인터페이스를 나타냅니다.
웹 서비스는 다양한 방법으로 정의 될 수 있습니다. 그러나이를 이해하기 위해 응용 프로그램이나 시스템 간의 통신에 사용되는 방법으로 정의 할 수 있습니다. 이것은 응용 프로그램 특정 응답을 생성하기 위해 다른 유형의 엔터티에서 형식화 된 요청을 수락 할 수있는 표준 기반 및 언어 대응 소프트웨어 엔터티로 설명 될 수 있습니다. 웹 서비스는 공개 프로토콜을 사용하여 통신하는 응용 프로그램 구성 요소입니다. 웹 서비스는 표준화 된 HTTP 및 XML 메시징 시스템을 사용하므로 플랫폼 독립적이며 언어 독립적입니다.
웹 서비스는 SOAP (Simple Object Access Protocol)와 REST (Representational State Transfer)의 두 가지 유형으로 분류됩니다.
SOAP 웹 서비스는 SOAP 및 ws- * 사양을 기반으로합니다. WS-Trust를 사용하여 보안 토큰을 확보합니다. 이것은 표준을 기반으로합니다. 이러한 웹 서비스는 객체 지향적입니다. SOAP은 기본적으로 웹 서비스 구현 중에 구조화 된 정보를 교환하는 데 사용되는 프로토콜 사양입니다. 메시지 형식으로 XML을 사용합니다. SOAP는 WS-I (Web Services Interoperability Organization)에서 지원됩니다. SOAP은 SOAP 프로토콜의 내부 구현을 통해 보안 및 주소 지정과 같은 측면을 처리 할 수있었습니다.
REST와 SOAP 웹 서비스의 비교 :
REST 웹 서비스 | SOAP 웹 서비스 | |
약어 | Representational State Transfer | 단순 개체 액세스 프로토콜 |
표준 | 표준 없음 | 선언적 (표준 WSDL이 사용됨) |
지원하다 | 수많은 콘텐츠 유형 | XML 만 |
신뢰할 수 있음 | 특정 애플리케이션 | WS- 신뢰할 수있는 메시징 |
캐싱 | 필요한 경우 Get 작업을 캐시 할 수 있습니다. | 아니 |
메시지 크기 | 경량 | 비교적 무거운 |
이행 | 단순한 | 복잡한 |
응용 분야 | 제한된 대역폭 및 리소스 완전히 무국적 운영 캐싱 상황 | 비동기 처리 및 호출 정식 계약 상태 저장 작업 |
개발자보기 | 자원 중심 | 객체 지향 |
전송 프로토콜 지원 | HTTP | HTTP, SMTP, JMS |