[GraphQL] GraphQL 맛보기 및 graphql-yoga

GONI·2021년 10월 25일
0

GraphQL

목록 보기
1/4
post-thumbnail

오늘은 아주 살짝 발만 담궛는데도 노드를 사용한 REST API의 방식보다 가벼워서 팔랑팔랑 날아다닐 거 같고 꽤나 세련되었다고 느껴진 GraphQL에 대한 맛보기를 다뤄보려고 한다.

1. 서버 세팅

npm init -y

npm설정을 통해 일단 기본 세팅을 해준 뒤, 필요한 모듈들을 설치하자.

npm i graphql-yaga

(모듈이름이 요가라니 정신수련을 해아할 것 같지만,,,)

잠시 가볍게 한눈팔면 설치되어 있을 것이다.
그리고 누구보다 빠르게 모듈을 불러오자.

const { GraphQLServer } = require("graphql-yoga")

GraphQL을 사용하기 위해 필요한 것은 총 3개, 바로

1. typeDefs

const typeDefs = `
  type Query {
    sayHi: String!
  }
`

2. resolvers

const resolvers = {
  Query: {
    sayHi: () => "Hello World!",
  },
}

3. GraphQLServer

const server = new GraphQLServer({
  typeDefs,
  resolvers,
})

그리고 이 모든 것을 하나로 아우러주는 server를 생성해 주기만 하면 된다.

server.start({ port: 5000 }, () => console.log("Graphql Server Running!"))

(서버실행은 덤)

그리고 서버를 실행한 뒤 5000번으로 접속해 보면?
GrapQL 놀이터가 나온다!


사실 찾아보니 세팅방법이 너무나 다양해보여서 어떻게 세팅해야할지 고민을 많이 했는데, 그나마 graphql-yoga를 사용하는 게 가장 간단하고, 보기에도 쉬운 것 같다. (Playground에서 주는 편안함이랄까...)

(typeDefs와 resolver는 파일을 분리해줘도 상관없다.)

profile
오로지 나의 기억력을 위한 일지

0개의 댓글