我已在 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/