Socket.IO连接后节点应用程序退出
所以已经阅读了这两个类似的问题
- Socket.io connection crashing node.js server
- Node socket.io server crash when starts
在第一个(也是唯一的)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"
}
回答如下:在这里回答Socket.io 1.x: use WebSockets only?基本上我禁用了从客户端的轮询,只允许将websocket作为传输。