首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在使用nodejs和express制作的REST API中设置响应状态和JSON内容的正确方法

在使用nodejs和express制作的REST API中设置响应状态和JSON内容的正确方法
EN

Stack Overflow用户
提问于 2014-09-27 03:16:36
回答 9查看 346.1K关注 0票数 229

我通过构建一个小的rest API来尝试Nodejs和express。我的问题是,设置代码状态和响应数据的最佳实践/最佳方法是什么?

让我用一些代码来解释(我不会放入启动服务器所需的节点和快速代码,只放入相关的路由器方法):

代码语言:javascript
复制
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方法:

代码语言:javascript
复制
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。

非常欢迎您提供资源/建议来了解有关此主题的更多信息。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26066785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档