📖 TIL/Node.js
[Node.js] Graphql-API
성란
2022. 1. 29. 23:54
GraphQL이란?
위키백과에 따르면 그래프QL은 페이스북이 2012년에 개발하여 2015년에 공개적으로 발표된 데이터 질의어이다. 그래프QL은 REST 및 부속 웹서비스 아키텍처를 대체할 수 있다고 한다. rest-API에 비해 GraphQL의 장점은 클라이언트의 필요한 데이터의 구조를 지정할 수 있으며, 서버는 정확히 동일한 구조로 데이터를 반환할 수 있다는 것이다.
이렇게 원하는 데이터만 골라서 가져올 수 있는 장점은 사용자가 많은 서비스에서 큰 진가를 발휘하는데, 바로 데이터 처리에 있어서 네트워크 비용절감 효과와 빠른 속도를 낼 수 있다는 점이 있다.
그래프QL은 rest-API다르게 단 두개의 쿼리문을 쓰게 되는데 다음과 같다.
요청방식 | REST-API | GraphQL |
조회 | GET | QUERY |
생성 | POST | MUTATION |
삭제 | DELETE | |
수정 | PUT |
RestAPI의 여러 요청방식과 다르게 단 두 개로 이루어진 GraphQL의 요청방식은 Mutation과 Query로 이루어져있는데, 이 둘은 각각 DB에서 데이터가 변경되느냐 안되느냐의 유무에 따라 사용될 수 있다.
GraphQL의 API 이름은 일반적인 함수의 이름과 비슷하게 생겨서 다른 부분보다 친숙하게 다가 올 수 있을 것 같다.