【发布时间】:2016-02-07 02:26:12
【问题描述】:
在 JavaScript / NodeJS 中返回错误号或错误状态代码的最有效方法是什么?比如我想在下面的sn-p中返回一个状态码(或者错误码)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);
【问题讨论】:
-
您的意思是,发送给客户?你用的是什么框架?
-
Using Node ... 我用它做什么都不重要,我只希望错误对象包含数值。
-
如果这就是问题所在,请使用助手
function StatusError(stat, msg) { var err = new Error(msg); err.statusCode = stat; return err; }然后
标签: javascript node.js