GraphQL

GraphQL 이란?

dlwltn98 2023. 1. 19. 17:02

GraphQL이란?

페이스북에서 만든 API를 위한 쿼리 언어

Over-fatching, Under-fatching 등의 REST API의 한계를 극복하기 위해 만들어졌다.

 

Over-fetching 

API를 호출 했을때 내가 필요한 데이터보다 많은 데이터를 가져오는 것

GraphQL은 내가 필요로 하는 정보만 요청하여 받기 가능

 

예시)

영화 제목 등 내가 원하는 정보를 얻기위해 요청하면 내가 원하는 정보와 원하지 않는 정보를 모두 받게 된다.

https://yts.mx/api/v2/list_movies.json

출처 : https://yts.mx/api/v2/list_movies.json

하지만 GraphQL을 사용하면 아래와 같이 내가 원하는 정보만 요청해 얻을 수 있다.

출처 : https://graphql.org/swapi-graphql

* https://graphql.org/swapi-graphql 에서 Graphql 사용해 볼 수 있음 

왼쪽 상단의 책모양을 누르면 Doc 확인 가능

 

Under-fetching

API를 호출 했을때 내가 필요한 정보보다 덜 받는 것

 

예시)

영화 데이터를 받아 왔는데 장르가 코드로 되어 있다면 그 코드 정보에 대한 데이터도 받아와야 한다.

Graphql은 필요한 모든 데이터를 단일 Requuest로 받아올 수 있다.

 

 

 

출처 :

https://yts.mx/api

https://graphql.org/

https://github.com/graphql/graphql-spec

'GraphQL' 카테고리의 다른 글

GraphQL 간단한 서버 만들기 3  (0) 2023.01.23
GraphQL 간단한 서버 만들기 2  (0) 2023.01.22
GraphQL 간단한 서버 만들기 1  (1) 2023.01.19