Bluebird 捕获错误的日志记录语法?
Posted
技术标签:
【中文标题】Bluebird 捕获错误的日志记录语法?【英文标题】:Bluebird catch err logging syntax? 【发布时间】:2014-09-03 00:55:47 【问题描述】:什么是等价的 Bluebird promise err logging to this:
if (err)
console.log(err);
res.send(err);
为此:
).catch(Promise.OperationalError, function(e)
// handle error in Mongoose save findOne etc, res.send(...)
).catch(function(e)
// handle other exceptions here, this is most likely
// a 500 error where the top one is a 4XX, but pay close
// attention to how you handle errors here
);
【问题讨论】:
【参考方案1】:Bluebird 会自动为您记录未处理的拒绝。如果您希望在错误时发送服务器响应并将链标记为已处理,您可以这样做:
.catch(function(err)
console.log(err);
res.send(err);
throw err; // this is optional, if you don't want to mark the chain as handled.
);
【讨论】:
我正在寻找如何继续错误链以处理单独块中的日志记录。谢谢!以上是关于Bluebird 捕获错误的日志记录语法?的主要内容,如果未能解决你的问题,请参考以下文章