REST-API vs GraphQL-API

SEOKWOO LEE·2022년 9월 18일
0

REST-API

API 또는 애플리케이션 프로그래밍 인터페이스는 애플리케이션이나 디바이스가 서로 간에 연결하여 통신할 수 있는 방법을 정의하는 규칙 세트입니다. REST API는 REST(REpresentational State Transfer) 아키텍처 스타일의 디자인 원칙을 준수하는 API입니다. 이러한 이유 때문에 REST API를 종종 RESTful API라고도 합니다. - IBM

REST-API 특징

  • Uniform Interface
  • Client-Server
  • Stateless
  • Cacheable
  • Layered System

REST-API의 구성 요소

  • Resource: URI
  • verb : HTTP Method
  • Representation of Resource

GraphQL-API

GraphQL은 API용 쿼리 언어이며 데이터에 대해 정의한 유형 시스템을 사용하여 쿼리를 실행하기 위한 서버 측 런타임입니다. GraphQL은 특정 데이터베이스나 스토리지 엔진에 연결되어 있지 않으며 대신 기존 코드와 데이터로 뒷받침됩니다. - GraphQL

GraphQL은 Graph Query Language의 줄임말이며 REST-API의 한계를 개선하기 위해 Facebook에서 만든 쿼리 언어이다.

GraphQl 특징

  • EndPoint가 하나로 구성되어 한번의 요청으로 많은 정보를 가져올 수 있다.
  • Over-fetching, Under-fetching 등의 문제가 발생하지 않는다.
  • 표준화된 쿼리 언어로 기종에 따라 따로 API를 구현할 필요가 없다.

GraphQL-API 구조

  • Query : 조회(Read)를 담당한다.
  • Mutation : 수정(Create, Update, Delete)을 담당한다.
  • Schema : query, mutation를 사용하기 위해 type 등을 정의하는 곳
  • Resolver : schema에 정의한 기능을 구현하는 곳
profile
내가 보기위해 만든 나만의 공부 노트

0개의 댓글

관련 채용 정보