node.js - 我在 iisnode windows web 应用程序上托管了我的 Loopback 4 应用程序,从那里获取端口作为 Loopback 4 无法理解的管道

标签 node.js iisnode loopback4

我已在 iisnode Windows Web 应用程序上托管了我的环回 4 应用程序,该应用程序将端口作为管道提供,在我的环回 4 应用程序中,我将端口读取为 Process.env.PORT。我收到错误:

Cannot start the application. RangeError [ERR_SOCKET_BAD_PORT]: Port should be >= 0 and < 65536. Received \.\pipe\fde1f2c4-428f-5513-8114-c9520f1ba02d

我尝试手动提供端口 80、443,但这不起作用并抛出类似错误

EADDRNOTAVAIL

预期端口是一个数字,但 iisnode 将其作为管道提供,而环回 4 拒绝了该端口。

    // index.js root file

    const application = require('./dist');

    module.exports = application;

    // Run the application
    const config = {
      rest: {
        port: (process.env.PORT|| 3000),
        host: process.env.WEBSITE_HOSTNAME || "localhost",
        openApiSpec: {
          setServersFromRequest: true,
        },
      },
    };
    application.main(config).catch(err => {
      console.error('Cannot start the application.', err);
      process.exit(1);
    });

    // index.ts inside src

    import {myApplication} from './application';
    import {ApplicationConfig} from '@loopback/core';

    export {myApplication};

    export async function main(options: ApplicationConfig = {}) {
      const app = new myApplication(options);
      await app.boot();
      await app.start();

      const url = app.restServer.url;
      console.log(`Server is running at ${url}`);

      return app;
    }

最佳答案

关于node.js - 我在 iisnode windows web 应用程序上托管了我的 Loopback 4 应用程序,从那里获取端口作为 Loopback 4 无法理解的管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57339128/

相关文章:

node.js - 当这些错误阻止时,如何生成 d.ts 文件类型?

node.js - 使用 npm install 安装 Angular CLI 失败

node.js - 使用 iisnode、nodejs 和 node-soap 库时 Win32 应用程序无效

asp.net - iisnode 401消息返回iis页面

swift - 如何使用 Swift 泛型处理成功和错误 API 响应?

javascript - Loopback4依赖注入(inject)错误: is not bound to any value in context application

javascript - Javascript 中的最大数组大小是多少以及要使用哪些数组

mysql - 使用 SQL 根据单条记录的更改来更改多条记录

node.js - 如何重启iisnode?

loopback4 - Loopback-4 通过模型添加时间戳createdAt和updatedAt