【发布时间】:2019-09-27 21:20:21
【问题描述】:
所以已经阅读了这两个类似的问题
在第一个(也是唯一一个)Socket.IO 连接之后,我的 Node.js 服务器应用程序立即退出。但并非每次,它似乎都是随机发生的,这使得故障排除更加困难。
在 Windows 10 中安装 Node v 10.16.3。
是否有任何 Node.js 专家建议一些故障排除步骤?
这是我的节点服务器应用程序的相关部分
var nodemailer = require('nodemailer');
var sgTransport = require('nodemailer-sendgrid-transport');
const os = require('os');
var exec = require('exec');
var child_process = require('child_process');
console.log(os.release());
var options = {
auth: {
api_key: 'my key here'
}
}
var mailer = nodemailer.createTransport(sgTransport(options));
//socket.IO code
var port = 3000;
var sys = require('util');
var express = require('express');
var app = express();
app
.use(express.static(__dirname + '/public'))
.get('/', function (req, res) {
res.write('API');
res.send('Hello World');
});
var server = app.listen(port);
var io = require('socket.io');
var sockIO = io.listen(server);
//sockIO.set('heartbeats',false);
//sockIO.set('heartbeat timeout', 1280);
sockIO.sockets.on('connection', function (socket) {
// new client is here!
console.log('YES SERVER IS RUNNING and __dirname is' + __dirname);
var APP = this;
对于包依赖
"dependencies": {
"exec": "^0.2.1",
"express": "^4.16.2",
"nodemailer": "^2.7.2",
"nodemailer-sendgrid-transport": "^0.2.0",
"sendgrid": "^4.10.0",
"socket.io": "^1.7.4"
}
【问题讨论】:
-
应用崩溃前是否有任何错误?默认行为可能是在处理未处理的错误时结束进程,您应该将一些错误处理程序附加到您的服务器。