REST API vs GRAPHQL API

BE_{Potato.}·2022년 12월 20일
0

REST API와 GRAPHQL API를 비교해보자.

REST API?
형태가 홈페이지 주소처럼 생겼고, 사용할 수 있는 매서드가 4가지(GET,POST,PUT,DELETE)이다.
REST API는 기본적으로 웹과 HTTP 프로토콜을 그대로 활용하기 때문에 웹의 장점을 최대한 활용할 수 있다.
HTTP 프로토콜을 사용하므로 따로 REST API 사용을 위한 환경을 만들 필요가 없다.
HTTP 표준프로토콜을 따르는 모든 플랫폼에서 호환된다는 범용성도 큰 장점인데,
명확한 구조 덕분에 의도하는 바를 쉽게 파악할 수 있는 명시성이 좋다.

하지만 이 REST API가 가진 단점도 꽤 있었기에 페이스북에서 이 단점을 보완하고자 GRAPHQL API를 만들었다.
GRAPHQL API 요청방식은 크게 MUTATION과 QUERY로 할 수 있다.
이 GRAPHQL API는 HTTP 요청의 횟수를 줄일 수 있다.
REST API는 각 리소스 종류별로 요청을 해야한다는 단점이 있었는데
GRAPHQL API는 딱 원하는 정보를 하나의 Query에 모두 담아 요청하는 것이 가능하다는 큰 장점이 있다.
그리고 HTTP 응답의 사이즈를 줄일 수 있다.
REST API는 응답의 형태가 정해져있어서 필요한 정보만 부분적으로 요청하지 못하고 전체를 요청해 전체를 응답받아 소요시간과 그 응답크기가 크다.
반면에 GRAPHQL API는 원하는 부분만 정보를 요청하는 것이 가능해 편리성을 갖췄다.
사실 GRAPHQL API는 그 속내를 파헤쳐보면 결국 REST API라고 한다.

두 가지 차이점을 알고, 각각이 더 적합한 쪽에 쓰는 것이 필요해보인다!

profile
항상 '기본'을 중요시하는 예비 백엔드개발자입니다!

0개의 댓글