在Nest.js应用程序的`main.js`中使用ConfigService

时间:2019-11-24 15:13:20

标签: javascript typescript middleware nestjs

我试图弄清楚如何才能使用我的ConfigService created as described here。在我的应用程序的最顶层。

我的main.js文件如下:

import { NestFactory } from '@nestjs/core';
import { TypeormStore } from 'connect-typeorm';
import * as session from 'express-session';
import { getRepository } from 'typeorm';
import { Session } from '../../domains/session/Session';
import { AppModule } from './AppModule';

async function bootstrap() {
    const app = await NestFactory.create(AppModule);

    app.use(session({
        resave: false,
        saveUninitialized: false,
        store: new TypeormStore({
            cleanupLimit: 2,
            ttl: 86400
        }).connect(getRepository(Session)),
        secret: process.env.COOKIE_SECRET as string
    }))

    await app.listen(3000);
}
bootstrap();

我想要将process.env.COOKIE_SECRET移到ConfigService内部的吸气剂中。我可以在此级别访问服务吗?

1 个答案:

答案 0 :(得分:3)

要从应用程序上下文中提取任何服务,在工厂创建应用程序const app = await NestFactory.create(AppModule)之后,您可以使用应用程序的get方法来提取服务以供使用const config = app.get<ConfigService>(ConfigService)和然后您可以使用已创建的配置方法。