捕获hapi请求生命周期中的所有错误。
我有一个注册处理程序,
public signup(request: Hapi.Request, reply: Hapi.Base_Reply) {
this.database.user.create(request.payload).then((user: any) => {
return reply({
"success": true
});
}).catch((err) => {
reply(Boom.conflict('User with the given details already exists'));
});
}
现在,我正在捕获该错误,但是我无法始终确保仅得到此错误消息。如果数据库中出现错误怎么办?
如何为所有请求捕获此类数据库错误或任何其他未知错误。 ???
最佳答案
也许您必须像这样在回复中返回err.message
reply(Boom.conflig(err.message))
或者如果您想管理或处理错误,则必须验证错误的类型,例如
if (err instanceof DatabaseError) {
// manage database error
}
关于error-handling - HAPI中的错误处理,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45550217/