Подключение схемы в Nest
Приложение уже поднимается, но единой точки для GraphQL ещё нет: клиент не к чему отправить текст запроса, а Nest не знает, какой драйвер использовать для схемы.
Подход code-first
строит схему из классов
резолверов и типов. Модуль
GraphQLModule.forRoot
с ApolloDriver
и autoSchemaFile: true
записывают в импорты корневого
модуля: при старте Nest
создаёт файл схемы и подключает
Apollo поверх того же процесса
NodeJS, без отдельного
.graphql файла
и без schema-first.
Покажем на примере постов:
npm install @nestjs/graphql @nestjs/apollo @apollo/server graphql
Подключим GraphQL в корневом модуле рядом с остальными импортами:
import { Module } from '@nestjs/common';
import { GraphQLModule } from '@nestjs/graphql';
import { ApolloDriver, ApolloDriverConfig } from '@nestjs/apollo';
@Module({
imports: [
GraphQLModule.forRoot<ApolloDriverConfig>({
driver: ApolloDriver,
autoSchemaFile: true,
}),
],
})
export class AppModule {}
Установите пакеты GraphQL и подключите схему в корневом модуле приложения работников.