Представьте, что вы довольны программированием, настраивая свой модуль с помощью auth.module.ts, используя в своем реестре классический вызов для получения значений env, Classic . env в вашем проекте и получите такую ​​ошибку…

Ошибка: secretOrPrivateKey должен иметь значение

может быть, ваш импорт для JwModule похож на этот.

@Module({
  imports: [
    UserModule,
    PassportModule,
    JwtModule.register({
      secret: process.env.JWT_SECRET,
      signOptions: {
        expiresIn: process.env.EXPIRES_IN,
        audience: process.env.APP_URL,
      },
    }),
  ],
  controllers: [AuthController],
  providers: [AuthService, LocalStrategy, JwtStrategy],

но нет, это не ваш фол, потому что время, когда начался импорт модуля, является предыдущей загрузкой или доступом к обычному и типичному process.env.VALUES, чтобы решить эту ошибку лучший способ выглядеть так.

import { ConfigModule, ConfigService } from '@nestjs/config';

@Module({
  imports: [
    UserModule,
    PassportModule,
    JwtModule.registerAsync({
      imports: [ConfigModule],
      inject: [ConfigService],
      useFactory: (config: ConfigService) => ({
        secret: config.get('JWT_SECRET'),
        signOptions: {
          expiresIn: config.get('EXPIRES_IN'),
          audience: config.get('APP_URL'),
        },
      }),
    })
  ],
  controllers: [AuthController],
  providers: [AuthService, LocalStrategy, JwtStrategy],
})