我正在玩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];
}
};
下面的代码运行完美,当与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);
});
如您所见,如果在数组中未找到该用户,则将状态设置为404。
非常欢迎您获得更多有关此主题的资源/建议。