topic난이도 · 약 20

SOAP vs REST

SOAP은 XML 기반 프로토콜, REST는 HTTP 기반 아키텍처 스타일. REST는 6원칙을 만족하면 REST다.

#SOAP#REST#HTTP
왜 배우는가

둘의 비교표가 매회 출제되고, 특히 REST 6원칙 중 하나를 묻는 단답이 반복된다. SOAP 메시지 구조(Envelope/Header/Body)도 출제 가능성이 있다.

SOAP과 REST는 '웹에서 데이터를 주고받는 방법'이라는 점에서 같지만, 성격이 다르다. SOAP은 엄격한 XML 프로토콜이고 REST는 HTTP를 자연스럽게 활용하는 스타일이다.

구분SOAPREST
유형프로토콜아키텍처 스타일
데이터 형식XML (고정)JSON 주로 (XML·Plain 가능)
전송 프로토콜HTTP, SMTP, TCP, JMS 등HTTP만
메시지 명세WSDLOpenAPI / Swagger
상태Stateful 가능Stateless
속도·크기느림 · 무거움빠름 · 가벼움
보안WS-Security 표준HTTPS · OAuth
주 사용처엔터프라이즈·금융·공공웹·모바일 API

REST 6원칙 — ① Client-Server(클라-서버 분리) ② Stateless(무상태) ③ Cacheable(캐시 가능) ④ Uniform Interface(일관된 인터페이스) ⑤ Layered System(계층 구조) ⑥ Code on Demand(옵션, 코드 실행)

SOAP 메시지 구조 — `<Envelope>` 안에 `<Header>`(메타데이터·보안)와 `<Body>`(실제 메시지). Envelope는 네임스페이스로 SOAP 표준임을 명시한다.

HTTP 메서드의 의미는 REST의 Uniform Interface를 구성하는 핵심이다. GET(조회), POST(생성), PUT(전체 수정), PATCH(부분 수정), DELETE(삭제)의 시맨틱을 지켜야 RESTful하다.

실기 드릴 5문항
edit실기 드릴 · 단답형

REST의 6원칙 중 '서버가 클라이언트의 상태를 저장하지 않는다'는 원칙은?

edit실기 드릴 · 단답형

SOAP 기반 웹 서비스의 명세서 역할을 하는 XML 문서는?

edit실기 드릴 · 단답형

REST 6원칙을 모두 쓰시오.

space_bar실기 드릴 · 빈칸 채우기

HTTP 메서드 중 리소스를 부분 수정할 때 사용하는 메서드는 ( ㉠ )이고, 전체 수정 또는 멱등성 있는 교체에는 ( ㉡ )를 사용한다.

check_circle실기 드릴 · OX

SOAP은 HTTP뿐 아니라 SMTP·TCP 등 다양한 프로토콜 위에서 동작할 수 있다.