尝试从部署的Firebase NextJs应用程序访问NestJs Google VM Server时出错

问题描述

我创建了一个看起来像这样的nestJS服务器:

import { nestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
import * as fs from 'fs'
import * as https from 'https'
import * as express from 'express'
import * as http from 'http'
import { ExpressAdapter } from '@nestjs/platform-express';

async function bootstrap() {

    const httpsOptions={
      key:fs.readFileSync('./secrets/key.pem','utf8'),cert: fs.readFileSync('./secrets/server.crt','utf8')
    }
    const server = express()
    const app = await nestFactory.create(AppModule,new ExpressAdapter(server));
    app.enableCors();
    await app.init()

    http.createServer(server).listen(3000)
    https.createServer(httpsOptions,server).listen(443,'EXTERNAL_IP')
  }


  bootstrap();

我将外部IP用作请求主机,但遇到下一个错误错误:监听EADDRNOTAVAIL:地址不可用EXTERNAL_IP:443。

解决方法

似乎您应该使用服务器的ip或0.0.0.0而不是EXTERNAL_IP,您可以在这些帖子中找到此替代方法(可能重复)

node.js server.listen on a specific IP address EADDRNOTAVAIL

NodeJS - Error: listen EADDRNOTAVAIL: address not available