什么是JavaScript / NodeJS中返回错误编号或错误状态码的最有效方法?例如,我想在以下片段中返回401状态码(或错误代码):
上面的登录方法将按以下方式调用:
var login = function (params, callback) {
var email = params.email || '',
password = params.password || '';
if (!isValidEmail(email)) {
return callback(new Error('Email address required', 401));
}
// Do something else
};
上面的登录方法将按以下方式调用:
authRouter.post('/login', function(req, res) {
svc.login(req.body, function (err, response) {
if (err) {
err.statusCode = err.statusCode || 401;
return res.status(err.statusCode).send({ message: err.message });
} else {
return res.send(response);
}
});
});
这里的目标是在方法中设置err.statusCode
(或类似项),并通过回调函数传递回来。基本上,我正在寻找以下缩写版本:
var err = new Error('Email address required');
err.statusCode = 401;
return callback(err);
function StatusError(stat, msg) { var err = new Error(msg); err.statusCode = stat; return err; }
即可。 - Bergi