当抛出错误时,使用 twilio Nodejs api 会使节点崩溃。例如,如果房间已经存在..
/home/web/node_modules/twilio/node_modules/q/q.js:876 抛出错误;错误:房间存在
尝试捕获没有帮助。尝试将其包装在承诺中,但没有成功。尝试首先获取房间,但如果房间不存在,它也会以同样的方式崩溃。试图检索所有正在进行的房间的列表,但它永远停滞不前。我可以获得所有已完成房间的列表,但我需要检查正在进行的房间。无论哪种方式,节点崩溃都是不好的,需要能够处理这些不测事件。
exports.createBackendRoom = function (roomname, callback) {
try {
client.video.rooms.create({uniqueName: roomname})
.then(function(room) {
console.log(room);
callback(true);
}).done();
} catch(e) {
console.log(e);
callback(false);
}
}Run Code Online (Sandbox Code Playgroud)
无法处理错误..
/home/web/node_modules/twilio/node_modules/q/q.js:876 抛出错误;错误:房间存在
我该如何优雅地处理这些?
尝试捕获没有帮助。
这是因为异步操作引发了错误。Try-catch将处理同步操作引发的错误。要处理异步错误,请添加一个catch(err=>{})块
exports.createBackendRoom = function (roomname, callback) {
client.video.rooms.create({uniqueName: roomname})
.then(function (room) {
console.log(room);
callback(true);
}).catch(err => {
console.log(err); // handle error
callback(false);
}).done();
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1228 次 |
| 最近记录: |