GraphQL과 REST API는 서버가 귀찮냐 클라이언트가 귀찮냐의 차이
리소스별로 요청하지 않아도 되므로 전체 응답 크기를 줄일 수 있지만
File 전송 등 텍스트만으로 하기 힘든 내용들을 처리하기 복잡
대부분의 요청이 crud에 해당할 때 graphql을 활용하면 좋을 수 있다
- GraphQL API 는 주로 하나의 Endpoint 를 사용한다.
- GraphQL API 는 요청할 때 사용한 Query 문에 따라 응답의 구조가 달라진다.
위에서 말했듯 RESTful API 는 Resource 마다 하나의 Endpoint 를 가지고,그 Endpoint 에서 그 Resource 에 대한 (거의) 모든 것을 담당한다.반면, GraphQL 은 전체 API 를 위해서 단 하나의 Endpoint 만을 사용한다.
- GraphQL
- 서로 다른 모양의 다양한 요청들에 대해 응답할 수 있어야 할 때
- 대부분의 요청이 CRUD(Create-Read-Update-Delete) 에 해당할 때
- RESTful
- HTTP 와 HTTPs 에 의한 Caching 을 잘 사용하고 싶을 때
- File 전송 등 단순한 Text 로 처리되지 않는 요청들이 있을 때
- 요청의 구조가 정해져 있을 때