我用TelegrafJS写了一个Telegram机器人,这个框架包装了Telegram
API。实际上,当我调用此方法时,我面临的问题是如何正确管理unhandled rejection
:
await ctx.deleteMessage(message_id);
其中ctx
是我得到的TelegrafJS
的实例:
错误:错误:400:错误的请求:找不到删除消息
发生此错误是因为我通过的message_id
不再存在于Telegram
聊天中。现在,问题是我有几个控制器可能导致该问题。
我正在查看Promise.prototype.catch(),我的问题是:我可以为我的应用程序设置全局rejection handler
,还是应该对可能受到异常影响的方法使用try/catch
块?
答案 0 :(得分:0)
是的,这很简单:
process.on('unhandledRejection', (err) => {
//handle it!
});
您也可以使用基本上相同的代码来捕获未处理的异常:
process.on('uncaughtException', (err) => {
//handle it!
});