错误函数不返回JSON格式

我试图在两种情况下使用错误函数将JSON错误对象传入我的代码中。 一旦在电子邮件和密码检查语句中,并再次在if现有用户语句。 我想这只是那个晚上的时间。

const User = require('../models/user'); exports.signup = function(req, res, next) { const email = req.body.email; const password = req.body.password; if (!email || !password) { return res.err("Please enter in email and password"); } //See if a user with the given email exists User.findOne({ email: email }, function(err, existingUser) { if (err) { return next(err); } //If a user with email does exist, return an Error if (existingUser) { //the status sets the status of the http code 422 means couldn't process this return res.err( 'Email is in use' ); } //If a user with email does NOT exist, create and save user record const user = new User({ email: email, password: password }); user.save(function(err) { if (err) { return next(err); } //Respond to request indicating the user was created res.json({ success: true }); }); }); } 

目前,您在回复中没有返回正确的状态码,您可以试试这个:

更换:

return res.err("Please enter in email and password");

return res.status(422).send({error: "Please enter in email and password"})

并replace:

return res.err( 'Email is in use' );

附:

return res.status(422).send({ error: "Email is in use" });

这将在http响应中发回所需的状态码。

还要考虑在代码中使用单引号或双引号来保持一致性。