我当前在使用node.js编写的TS3查询机器人上工作。 我添加了一个自动重新连接,但我现在有一个问题,如果服务器脱机,机器人崩溃,出现以下错误:
events.js:85
throw er; // Unhandled 'error' event
^
Error: connect ECONNREFUSED
at exports._errnoException (util.js:746:11)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:983:19)
开始连接的行如下:
var cl = new ts3.TeamSpeakClient(config.serverIP);
与node-ts api一起使用 - > https://github.com/nikeee/node-ts
我已添加以下事件:
cl.on('error', function(err){
console.log("bla: " + err)
});
cl.on('uncaughtException', function (err) {
console.log(err);
});
uncaughtException没有被触发,错误也没有防止崩溃。
如何防止它崩溃?
编辑:它是async btw。
答案 0 :(得分:0)
您需要捕获进程上的UncaughtException而不是ts3对象。
process.on('uncaughtException', function (err) {
console.log(err);
})
可以在here上找到有关处理例外的更多信息。
更新:
cl也有自己的失败承诺。要像这样实现:
cl.fail(function(err) {
console.log("An error occurred." + util.inspect(err))
});