프로젝트

일반

사용자정보

Actions

REST API

  • REST는 웹의 장점을 최대한 활용하기 위한 아키텍처로 HTTP기반으로 필요한 자원에 접근하는 방식이며 REST API는 이러한 REST를 통하여 API를 구현한 상태이다.

1) REST 특징

  • 모든 resource는 HTTP 메소드(GET, POST, PUT, DELETE)를 사용하여 접근한다.
  • 클라이언트와 서버의 역할이 분리되고 서버 사이드의 모든 resource는 resource별로 클라이언트가 접근 가능한 URI를 가지고 있다.
  • 모든 요청은 클라이언트가 요청할 때마다 응답을 주기 때문에 상태 정보를 기억할 필요가 없어 자유도가 높고 구현이 쉽다.
  • HTTP 표준에 따르는 모든 플랫폼에서 사용 가능하다.

2) REST 단점

  • Point-to-Point 통신 모델을 가정하므로 둘 이상으로 상호 작용하는 분산 환경에는 유용하지 않다.
  • 보안, 정책 등에 대한 표준이 없다.
  • HTTP 통신 모델만 지원한다.

3) HTTP 메소드 분류

Method Type Description
GET 요청된 리소스를 조회(READ)
POST 요청된 리소스를 생성(INSERT)
PUT 요청된 리소스를 수정(UPDATE)
DELETE 요청된 리소스를 삭제(DELETE)

4) REST API 메시지

HTTP 요청 헤더 포멧 HTTP 응답 헤더 포멧
Request Line Status Line
Header Header
(White Space) (White Space)
Body Body
  • HTTP header : HTTP Body에 데이터가 어떤 데이터 포멧으로 담겼는지 정의
  • HTTP Body : 리소스를 정의 된 데이터 포맷으로 전달
  • HTTP 응답상태코드 : 리소스 요청에 대한 응답의 상태를 상태코드 형태로 전달

이태훈이(가) 3년 이상 전에 변경 · 1 revisions