5.8 GQL context

With·2022년 8월 9일
0

nest.js

목록 보기
3/5

graphql context

(1) gql context란?
모든 graphql request에서 공유할 수 있는 값. request란, @Query(), @Mutation()을 뜻하고, resolver에 있는 @Query, @Mutation 에서 @Context로 불러와서 사용할 수 있다. GraphQLModule.forRoot()에 등록된 context는 매 request마다 호출된다.

(2) context를 사용하는 방법
첫째, GraphQLModule.forRoot()에서 context를 먼저 등록해줘야 한다.

GraphQLModule.forRoot<ApolloDriverConfig>({
      driver: ApolloDriver,
      autoSchemaFile: true,
      context: ({ req }) => ({ user: req['user'] }),
    }),

둘째, Resolver에 있는 @Query 에서 @Context를 사용해서 받는다.

@Query(() => Boolean)
  me(@Context() context) {
    console.log(context.user); // user의 정보를 확인할 수 있음
    return true;
  }
profile
주니어 프론트엔드 개발자 입니다.

0개의 댓글