[모던 자바스크립트 Deep Dive] 44장. REST API

2023. 3. 20. 16:09모던 자바스크립트 Deep Dive 정리

REST는 HTTP를 기반으로 클라이언트가 서버의 리소스에 접근하는 방식을 규정한 아키텍처고, REST API는 REST를기반으로 서비스 API를 구현한 것을 의미한다.

1. REST API 의 구성

REST API 는 아래의 요소로 구성된다.

구성요소 내용 표현 방법
자원(Resource) 자원 URI(엔드포인트)
행위(Verb) 자원에 대한 행위 HTTP 요청 메서드
표현(Representations) 자원에 대한 행위의 구체적인 내용 페이로드

 

2. REST API 설계 원칙

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

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

- URI는 리소스를 표현하는데 중점을 두어야 한다. 리소스를 식별할 수 있는 이름은 동사보다는 명사를 사용한다. 따라서 이름에 get 같은 행위에 대한 표현이 들어가서는 안된다.

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

- HTTP 요청 메서드는 클라이언트가 서버에게 요청의 종류와 목적(리소스에 대한 행위)을 알리는 방법이다. 주로 5가지 요청 메서드를 사용하여 CRUD를 구현한다.

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

* 모던 자바스크립트에서는 주로 5가지를 사용한다 했지만, 대부분은 patch를 제외한 4가지를 주로 사용한다고 한다.

* GET, POST 방식 이외에는 보안이 취약해서 사용을 권장하지 않는다는 글들이 많다.

 

이후에는 실습과정이므로 생략한다.

 

3. REST, REST API, RESTful 에 관한 추가자료

1) https://gmlwjd9405.github.io/2018/09/21/rest-and-restful.html

 

[Network] REST란? REST API란? RESTful이란? - Heee's Development Blog

Step by step goes a long way.

gmlwjd9405.github.io

2) https://aws.amazon.com/ko/what-is/restful-api/

 

RESTful API란 무엇인가요? - RESTful API 설명 - AWS

Amazon API Gateway는 어떤 규모에서든 개발자가 API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보안 유지할 수 있도록 하는 완전관리형 서비스입니다. API Gateway를 사용하면 실시간 양방향 통신 애

aws.amazon.com

3) https://khj93.tistory.com/entry/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-REST-API%EB%9E%80-REST-RESTful%EC%9D%B4%EB%9E%80

 

[네트워크] REST API란? REST, RESTful이란?

REST API란 REST를 기반으로 만들어진 API를 의미합니다. REST API를 알기 위해 REST부터 알아보도록 하겠습니다. REST란? REST(Representational State Transfer)의 약자로 자원을 이름으로 구분하여 해당 자원의 상

khj93.tistory.com