我正在玩Nodejs并通过构建一个小的rest API来表达.我的问题是,设置代码状态的好方法/最佳方法是什么,以及响应数据?
让我解释一下代码(我不会把节点和快速代码放到启动服务器,只关注路由器方法):
router.get('/users/:id', function(req, res, next) {
var user = users.getUserById(req.params.id);
res.json(user);
});
exports.getUserById = function(id) {
for (var i = 0; i < users.length; i++) {
if (users[i].id == id) return users[i];
}
};
Run Code Online (Sandbox Code Playgroud)
下面的代码工作正常,当使用Postman发送请求时,我得到以下结果:

如您所见,状态显示200,即可.但这是最好的方法吗?有没有我应该自己设置状态,以及返回的JSON?或者总是由快递处理?
例如,我刚刚进行了快速测试并略微修改了上面的get方法:
router.get('/users/:id', function(req, res, next) {
var user = users.getUserById(req.params.id);
if (user == null || user == 'undefined') {
res.status(404);
}
res.json(user);
});
Run Code Online (Sandbox Code Playgroud)
如您所见,如果在阵列中找不到用户,我将只设置404状态.
有关此主题的更多信息的资源/建议非常受欢迎.