어떤 에러인가요?
API Reference: apollo-server
app.use('*', jwtCheck, requireAuth, checkScope);
www.apollographql.com
nestJS의 공식문서에서 GraphQL을 사용할 때, Apollo 서버를 기반으로 동작한다고 나와있다.
Apollo 서버에서는 typeDefs와 resolvers가 필수요소로 들어가 있어야하나, 코드에 작성되있지 않다는 에러가 뜨는 것이다.
에러 메세지
Error: Apollo Server requires either an existing schema, modules or typeDefs
에러 핸들링 방법
typeDefs는 document 혹은 나의 서버의 schema를 표현한다는 것이고,
resolvers는 function인데 쿼리를 처리하고, 변화시켜준다는 것을 의미한다.
//before
@Module({
imports: [
GraphQLModule.forRoot<ApolloDriverConfig>({
driver: ApolloDriver,
}),
],
controllers: [],
providers: [],
})
//after
@Module({
imports: [
GraphQLModule.forRoot<ApolloDriverConfig>({
driver: ApolloDriver,
autoSchemaFile: true, // 스키마 파일을 만들어주는 역할을 한다.
}),
],
controllers: [],
providers: [],
})