Как использовать функции fastify + nestjs + firebase

Я использую NestJS и облачные функции, из-за производительности хочу перейти на 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(???);

https://docs.nestjs.com/techniques/performance


person Reza    schedule 23.01.2020    source источник
comment
Если Fastify каким-то образом не интегрируется с экспресс-приложением, как показывает ваш первый пример кода, то здесь нет простого аргумента. Вам нужно будет создать экспресс-приложение, чтобы обернуть его.   -  person Doug Stevenson    schedule 23.01.2020


Ответы (1)


Вам нужно будет создать анонимную функцию для передачи в качестве аргумента, как указано здесь [1].

[1] https://firebase.google.com/docs/functions/http-events

person Antonio Ramirez    schedule 30.01.2020