nodejs:类型错误:无法读取未定义的属性(读取"关闭")


process.on('unhandledRejection', (err, promise) => {
console.log(`Error: ${err.message}`.red);
//close server & exit process
let server;
server.close(() => process.exit(1));
});

C:UsersFordDesktopDevCamperAPIserver.js:48
server.close(() => process.exit());
^
TypeError: Cannot read properties of undefined (reading 'close')

有人能帮我一下吗?我想知道为什么我有这个错误,有人能帮我吗?nodejs

您的声明let server没有分配任何值,服务器未定义。所以当你在未定义对象上调用close时,你会得到这个错误。

在这种情况下,服务器变量是未定义的,因此当您试图在未定义的变量上调用方法时,代码执行失败。有多种方法可以使用不同的节点模块(如https、http、hapi等)创建服务器。如果您已经在此函数之外的模块中定义了服务器变量,那么您也可以使用它来关闭服务器。其中一种方法是:

var http = require('http');
var server = http.createServer(function (req, res) {
res.write('Application starting');
res.end();
});
server.listen(8080);
process.on('unhandledRejection', (err, promise) => {
server.close(() => process.exit(1));
});

最新更新