본 포스팅은 얄코의 코딩사전 & 노마드 코더 영상 참고
https://youtu.be/EkWI6Ru8lFQ
https://youtu.be/N-81mS2vldI
Over Fetching
Under Fetching
// 요청
{
upcoming{
title
}
nowPlaying{
title
popularity
}
}
// 응답
{
"upcoming": [
{"title": "The Northman"},
{"title": "Dune"},
{"title": "Dr.strange"}
],
"nowPlaying": [
{"title": "The Northman", "popularity":10},
{"title": "Iron Man", "popularity":8},
]
}
GraphQL은 REST API의 이러한 OverFetching, UnderFetching의 단점을 해결!
같은 API서버를 사용하더라도 사용자마다 필요한 정보가 다른데 이런 서비스에서는 GraphQL이 유용할 것
구현?
백엔드 서버에 REST API와 GraphQL을 한 번에 구현하자
각 정보와 요청마다 유리한 걸로 고르거나 둘 다 만들어서 클라이언트에게 제공하면 된다
각 언어마다 제공하는 GraphQL 라이브러리를 이용해 구현
type Query {
pizza_buns: [PizzaBun]
pizza_bun(pb_idx: Int):PizzaBun
}
resolver에서도 PizzaBun index (pb_idx)를 인자로 받아서 해당하는 피자빵을 반환하는 쿼리문을 짠다
그 결과를 반환