如何在Hapi中正确处理错误?

时间:2017-07-01 04:46:15

标签: node.js rest error-handling sequelize.js hapijs

我开始学习Hapi,但我不确定错误处理。

继承我的代码:

    method: ['POST'],
    path: '/users',
    handler: function (request, reply) {
        if (request.query['password'] == request.query['password_confirmation']) {
            models.User.create({
                'email': request.query['email'],
                'password': request.query['password'],
                'password_confirmation': request.query['password_confirmation'],
            })
                .catch(models.Sequelize.ValidationError, err => {
                    return reply(err);
                })
                .then(user => {
                    return reply(user);
                });
        } else {
            return reply('password do not match');
        }

这将生成

未处理拒绝错误:回复界面调用两次

如何正确处理验证错误?我找不到很多

关于Hapi的代码示例,让我很难过。

谢谢!

1 个答案:

答案 0 :(得分:1)

为什么会有一个阻止后的帖子

 models.User.create({ 
 'email':request.query['email'], 
 'password': request.query['password'],
   'password_confirmation:request.query['password_confirmation'],
}) 
.then(user => { return reply(user); })
.catch(models.Sequelize.ValidationError, err =>
{ return reply(err); })