프론트엔드/GraphQL

[GraphQL] Apollo를 이용해 GraphQL API서버 만들기 - Setup

잡캐헨리 2022. 10. 11. 01:33

개발자들사이에서는 백문이 불여일타 라는 말이 있다. 100번 보는것 보다 한번 코드를 쳐보는게 더 낫다고 장난식으로 하는 말인데 실제로 코드를 눈으로만 보고 이해했다고 개발에서 사용할 수 있는게 아니다.

 

GraphQL에 대해 배우게 되었으니 배운 지식을 활용해 간단한 영화조회 앱을 만들어보고자한다. 

 

GraphQL이란? >

 

[GraphQL] 개발자들의 많은 관심을 받고있는 차세대 언어!

GraphQL은 2016년 facebook에서 만든 오픈소스 쿼리언어이고, 쿼리 언어중에서도 Server API를 통해 정보를 주고받기 위해 사용하는 쿼리언어이다. 많은 개발자들이 GraphQL에 대해 알고있고, 굉장히 인기

jobkaehenry.tistory.com

GraphQL의 구조 >

 

[GraphQL] GraphQL 구조

GraphQL과 REST API 의 차이 REST API 는 HTTP 통신의 METHOD (Get,Post,Delete,Post...etc)와 URI를 이용해 서버와 필요한 통신을 수행한다. 그에 반해 GraphQL은 하나의 URI에 한가지 Method (Post)를 이용해..

jobkaehenry.tistory.com

프로젝트 셋업

Apollo란?

https://www.apollographql.com/docs/apollo-server/

Apollo 서버는 Apollo 클라이언트를 포함한 모든 GraphQL 클라이언트와 호환되는 사양 준수(spec-compliant)의 오픈 소스 GraphQL 서버이다. GraphQL을 사용해 서버통신을 하려면 Apollo와 같은 라이브러리가 필요한다 Apollo 패키지는 React에서 GraphQL API를 호출하는데 유용한 Apollo Hooks를 제공한다

 

Apollo, GraphQL 설치

npm을 이용한 설치

npm install apollo-server graphql

yarn을 이용한 설치

yarn add apollo-server graphql

 사용하고자하는 패키지매니저를 이용해 apollo-server와 graphql 패키지를 설치한다.

 

Nodemon 설치

npm을 이용한 설치

npm install nodemon -D

yarn을 이용한 설치

yarn add nodemon -D

Node.JS 서버를 개발할 때 개발의 편의성을 높이기 위해 nodemon 이라는 라이브러리 역시 설치해 준다. Nodemon을 이용하면 js파일을 저장, 변경 할때마다 서버를 자동으로 재시작시켜주어 개발 편의성을 높여준다.

이때, nodemon은 -D라는 키워드를 이용해 Dev-dependencies 로 설치해주는데 nodemon은 실제 배포에서는 사용되지않고 개발 과정에서만 사용되기 때문이다.