用户验证失败:电子邮件:无效的电子邮件,需要自定义错误

时间:2018-05-07 09:21:21

标签: node.js validation mongoose

我正在使用validator npm package验证电子邮件是否正确。

我需要的只是发送自定义消息 - 无效的电子邮件 但我得到了这个 -

User validation failed: email: Invalid Email
const UserSchema = mongoose.Schema({
    email:{
        type: String,
        unique: true,
        required: true,
        trim: true,
        lowercase: true,
        validate: [isEmail, 'Invalid Email']
    },
});

一切都很好但是当我发现错误并记录它时 -

user.save().then(data => {
    res.status(201).send(data);
}).catch(err => {

    console.log(err.message); // this line here logs out the error message

    return res.status(500).send({
        message: err.message
    });
})

我需要这个 - Invalid Error而不是User validation failed: email: Invalid Email

提前致谢!

1 个答案:

答案 0 :(得分:0)

这里有2个解决方案:
1.编辑验证程序包并删除用户验证失败'完全一行。
2.拆分错误消息:

var errMessageArray = err.message.split(':');
var messageToReturn = errMessageArray[errMessageArray.length - 1]