如何在Nest 6中注入HTTP服务器?

问题描述 投票:1回答:1

我正在努力从Nest 6升级项目,我无法弄清楚如何将当前使用的HTTP服务器实例注入到类中。

以前,我一直在使用HTTP_SERVER_REF@nestjs/core,如下所示:

@Inject(HTTP_SERVER_REF) private readonly httpServer: HttpServer

这个常数似乎不再存在。我有一些猴子补丁解决方案,可以让我访问HTTP服务器,但我想知道:是否有一种新的,正确的方式来注入HTTP服务器?我顺便使用默认的@nestjs/platform-express包。

javascript node.js typescript dependency-injection nestjs
1个回答
1
投票

你可以注入HttpAdapterHost,参见docs

export class CatsService {
  constructor(private readonly adapterHost: HttpAdapterHost) {}
}

然后,您可以通过此属性访问http适配器:

const httpAdapter = this.adapterHost.httpAdapter;

您可以获得的库实例:

const instance = httpAdapter.getInstance();
© www.soinside.com 2019 - 2024. All rights reserved.