【发布时间】:2020-05-09 23:40:42
【问题描述】:
我正在使用 NestJS 和 Cloud Functions,因为性能原因我想切换到 Fastify。
但我不知道要传递什么给functions.https.onRequest(???)
我的快递旧代码是:
admin.initializeApp(functions.config().firebase);
const server: express.Express = express();
const startNestApplication = async (expressInstance: express.Express) => {
const adapter = new ExpressAdapter(expressInstance);
const app = await NestFactory.create(AppModule, adapter, {});
app.enableCors();
await app.init();
return app;
};
const main = startNestApplication(server);
export const api = functions.https.onRequest(server);
而新代码是:
admin.initializeApp(functions.config().firebase);
const startNestApplication = async () => {
const adapter = new FastifyAdapter();
const app = await NestFactory.create<NestFastifyApplication>(AppModule, adapter, {});
app.enableCors();
await app.init();
return app;
};
const main = startNestApplication();
export const api = functions.https.onRequest(???);
【问题讨论】:
-
如果您的第一个代码示例显示 Fastify 没有以某种方式与 express 应用程序集成,那么在这里传递的不仅仅是一个简单的参数。您必须构建一个快速应用程序来包装它。
标签: javascript google-cloud-functions nestjs fastify