Почему не срабатывает middleware в nest, graphQl?

Выполняю действия по доке

auth.middleware.ts

import { FieldMiddleware, MiddlewareContext, NextFn } from '@nestjs/graphql';

export const AuthMiddleware: FieldMiddleware = async (
  ctx: MiddlewareContext,
  next: NextFn,
) => {
  const value = await next();
  console.log(
    'Тест выполнения промежуточного ПО',
  );

  return value;
};


Затем глобально устанавливаю в модуль

app.module.ts

....
import { AuthMiddleware } from './middleware/auth.middleware';
@Module({
  imports: [
    ConfigModule.forRoot({ isGlobal: true, envFilePath: './.env' }),
    GraphQLModule.forRoot<ApolloDriverConfig>({
      driver: ApolloDriver,
      autoSchemaFile: 'schema.gql',
      sortSchema: true,
    }),
    TypeOrmModule.forRootAsync({
      imports: [ConfigModule],
      inject: [ConfigService],
      useFactory: async (config: ConfigService) => ({
        type: config.get<'aurora-mysql'>('TYPEORM_CONNECTION'),
        username: config.get<string>('TYPEORM_USERNAME'),
        password: config.get<string>('TYPEORM_PASSWORD'),
        database: config.get<string>('TYPEORM_DATABASE'),
        port: config.get<number>('TYPEORM_PORT'),
        entities: [__dirname + 'dist/**/*.entity{.td, .jd}'],
        synchronize: true,
        autoLoadEntities: true,
        logging: true,
        buildSchemaOptions: {
          fieldMiddleware: [AuthMiddleware], //вот установка 
        },
      }),
    }),
    AdminModule,
  ],
  controllers: [AppController],
  providers: [AppService],
})
export class AppModule {}


Затем делаю запрос, ответ успешно прилетает, а вот консоль, что видит middlewear не отрабатывает.
  • Вопрос задан
  • 101 просмотр
Решения вопроса 1
@gradk Автор вопроса
buildSchemaOptions: {
          fieldMiddleware: [AuthMiddleware], //вот установка 
        },


Я подключил не к GraphQLModule
А к TypeOrm...

поэтому не работало
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы