我检查输入的电子邮件或输入的用户名是否存在于数据库中,以防止创建重复项。它成功检查电子邮件或用户名是否存在,但我不知道如何返回错误响应中存在的内容。目前,它只是返回两者都存在,即使假设只有电子邮件存在而不是用户名。
User.findOne({$or: [{email: req.body.email}, {name: req.body.name}]}).then(user => {
if (user) {
return res.status(400).json({ name: "Username exists", email: "Email exists" });
}
});
最佳答案
将您的响应提取到对象中
return res.status(400).json(response_obj)
并有条件地构建它
response_obj = {}
if (user.email) {
response_obj.email = "Email exists."
}
关于javascript - 如何在 MongoDB findOne 上返回条件响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59555234/