在由nodejs制作的REST API中设置响应状态和JSON内容并表达的正确方法

我正在玩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。

非常欢迎了解有关此主题的资源/建议。