한준호

[Modern javascript] REST API 본문

Frontend/modern javascript

[Modern javascript] REST API

igoman2 2021. 10. 4. 22:52
728x90

■ REST API

- HTTP를 기반으로 클라이언트가 서버에 접근하는 방식을 규정한 아키텍쳐

구성 요소 내용 표현 방법
자원 자원 URI
행위 자원에 대한 행위 HTTP 요쳥 메소드
표현 자원에 대한 행위의 구체적 내용 페이로드

 

REST에서 가장 중요한 기본 원칙은 두 가지다.

 

1. URI는 리소스를 표현해야 한다

리소스를 식별할 수 있는 이름은 동사보다 명사를 사용

#bad

GET / getTodos / 1

GET / todos / show / 1

 

#good

GET / todos / 1

 

2. 리소스에 대한 행위는 HTTP 요청 메소드로 표현한다.

GET POST PUT PATCH DELETE

HTTP 요청 메소드 종류 목적 페이로드
GET index/retrieve 모든/특정 리소스 취득 X
POST create 리소스 생성 O
PUT replace 리소스의 전체 교체 O
PATCH modify 리소스의 일부 수정 O
DELETE delete 모든/특정 리소스 삭제 X

#bad

GET / todos / delete / 1

 

#good

DELETE / todos / 1

 

 

■ 특징

1. Server - Client 구조

2. Stateless

- 각각의 request를 별개의 것으로 인식

3. Cacheable

- Last-modified 태그나 E-Tag를 이용하여 캐싱 구현 가능

4. Layered System

- REST server는 다중 계층으로 구성될 수 있다(보안, 로드밸런싱, 암호화, 사용자 인증 등)

5. Code on Demand 

6. Uniform Interface

728x90
Comments