본문 바로가기

GraphQL

Express와 Apollo server를 이용한 GraphQL API 만들기 지난번에 [Express.js/Node.js] Express framework를 이용한 REST API 서버 만들기 에서 Express 프레임워크를 이용하여 REST API서버를 만들어 보았다. 이번에는 Express 프레임워크와 Apollo Server를 이용해서 GraphQL API를 만들어보자. GraphQL에 대해서는 GraphQL(Graph Query Language) 란? 더보기
GraphQL 스키마 작성하기 (GraphQL Schema) GraphQL(GraphQueryLanguage) 란? 위 글에서 GraphQL에 대해 소개하는 시간을 가졌다. GraphQL을 이용한 API를 구현하기 위해서는 스키마(Schema)를 작성할 수 있어야한다. 스키마는 데이터 타입의 집합으로 API 문서 역할을 한다. GraphQL API를 설계할 때엔 스키마를 먼저 정의하게 되며 이 스키마에는 어떤 종류의 객체를 반환할 지 내가 받을 수 있는 자원은 어떤 종류인지 어떠한 자원을 인자로 받는지가 정의되어있다. # 스칼라 (Scalar) 스칼라 타입은 gql schema에서 쪼개질 수 없는 가장 작은 단위이며 5가지 기본 타입이 존재한다. Int : 부호가 있는 32비트 정수 Float : 부호가 있는 부동소수점 값 String : UTF-8 문자열 Boo.. 더보기
GraphQL(Graph Query Language) 란? # GraphQL GraphQL은 Graph Query Language의 줄임말으로 페이스북에서 개발하였으며, 서버 API를 구성하기 위해 만든 데이터베이스 쿼리 언어이다. 쿼리문의 작성이 직관적이며 API를 호출할 때 쿼리문을 원하는 형식으로 작성하여 원하는 데이터만 응답받도록 할 수 있다. 기존 서버 API에서 주로 사용되던 RESTful API는 사용자가 원하는 형태의 모든 API를 구현하는데에 어려움이 있었으며 이러한 니즈는 GraphQL의 등장배경이 되었다. https://graphql.org/ 에 접속하여 GraphQL의 쿼리문의 형식과 그에 따른 응답을 예제로 볼 수 있다. # EndPoint 위에 적었듯 GraphQL의 등장배경에는 RESTful API의 구현방식 상 각기 다른 요구 사항에.. 더보기