我正在正确地进行从Nest 6升级项目的工作,无法弄清楚如何将当前使用的HTTP服务器实例注入到类中。
以前,我一直这样使用HTTP_SERVER_REF
中的@nestjs/core
:
@Inject(HTTP_SERVER_REF) private readonly httpServer: HttpServer
这个常数似乎不再存在。我想到了一些猴子补丁程序解决方案,可以让我访问HTTP服务器,但是我想知道:是否有新的适当方法来注入HTTP服务器?我正在使用默认的
@nestjs/platform-express
包。 最佳答案
您可以改为注入HttpAdapterHost
,请参见docs:
export class CatsService {
constructor(private readonly adapterHost: HttpAdapterHost) {}
}
然后,您可以通过以下属性访问http适配器:
const httpAdapter = this.adapterHost.httpAdapter;
您可以使用以下库实例:
const instance = httpAdapter.getInstance();