본문 바로가기
1st life_Programmer/GraphQL

4. Schema 확장시키기(1)

by Z선배 2019. 7. 31.

저번 시간에는 서버의 작동을 보기 위해 간단한 Query와 Resolvers를 정의해서 테스트해 보았습니다.

 

이제부터는 조금 더 응용된 스키마들을 작성해봅시다~

 

Query요청을 name이 아닌 person으로 바꿔볼까요!

person을 요청했을때 알려주어야 하는 student 데이터 타입이 정의가 안되어 있기 때문에 student라는 데이터 타입도 정의해줍니다.

type Student {
    name: String!
    age: Int!
    gender: String!
}

type Query{
    person: Student!
}

 

resolvers.js 에서 person요청을 하면 Sso를 리턴해주도록 만들어 줍니다.

이때 Sso가 무엇인지 모를테니 Sso에 대한 정보도 위에 정의해주도록 합시다 ㅎㅎ

const Sso = {
    name: "Sso",
    age: 20,
    gender: "female"
}

const resolvers = {
    Query: {
        person:() => Sso
    }
};

export default resolvers;

 

이제 playground로 가서 person을 요청해봅시다.

person만 요청하면 person의 무엇을 요청하고 싶냐고 다시 물어보게 됩니다.

우리는 이때 필요한 정보만 요청하면 됩니다. 예를 들면 이름만 또는 성별만 받을 수 있는 것이지요 :)

 

댓글