GraphQL Query

GraphQL Query 를 어떻게 작성하는지 정리한다.

Query

Query 로 API 에 데이터를 요청할 수 있다.
Query 안에는 서버로부터 받고 싶은 데이터를 필드로 넣는다.

https://snowtooth.moonhighway.com 에 접속해서, 아래 Query 를 실행해보자.

1
2
3
4
5
6
query {
allLifts{
name
status
}
}

응답되는 JSON 에는 아래와 같이,
allLifts 배열과 각 Lift 에 대한 name 과 status 가 있다.

query root type

query 는 GraphQL 의 타입 중 루트 타입이다.
타입 하나는 하나의 작업을 수행하는데, query 는 쿼리 문서의 루트를 의미하기 때문이다.
query 에 사용할 수 있는 필드는 API 스키마에 정의한다.
사용할 수 있는 필드는 아래와 같이 liftCount, allLifts, allTrains 등이 있다.

Read more

GraphQL 소개

GraphQL 이 무엇이고, REST 와의 차이는 무엇인지 정리한다.

GraphQL 이란

GraphQL 은,

  1. API 를 만들 때 사용할 수 있는 쿼리 언어이자,
  2. 쿼리에 대한 데이터를 받을 수 있는 server-side 런타임이다.

GraphQL 은 선언형 데이터 패칭 언어라고 불린다.
무엇이 필요한지에 대한 요구사항만 작성하면 되고, 어떻게 가져올지는 신경쓰지 않아도 된다.

이에 대한 이해를 하기 위해, GraphQL 쿼리문과 응답 테스트를 여기서 해보자.
쿼리문을 보내고 데이터를 받을 수 있다.
https://graphql.github.io/swapi-graphql/

다음과 같이 입력하고 실행해보자.

1
2
3
4
5
6
7
query{
person(personID: 5){
name
birthYear
created
}
}

아래에서,
왼쪽이 쿼리문이고 오른쪽이 쿼리문에 대한 응답 데이터이다.

Read more