简体   繁体   English

如何使用Express Node.js返回Json列表的子集作为响应

[英]How to return subset of Json list in response using Express Nodejs

I've a basic model where I would like to implement an endpoint that is capable to return subset of list back when we pass in some string param, and not sure how to go about doing it. 我有一个基本模型,在该模型中,我想实现一个端点,该端点能够在传递某些字符串参数时返回列表的子集,并且不确定如何执行此操作。

here is json file: 这是json文件:

var user = [
  {"id": "1", "name": "subash", "age": "22", "occupation": "doctor"},
  {"id": "2", "name": "alex", "ip": "33", "occupation": "engineer"},
  {"id": "3", "name": "darran", "ip": "18", "occupation": "singer"}
 ];

expected endpoint 预期终点

app.get('/users/:someStringParam', user.findById);

expected response 预期反应

Filters/returns rows of users who's name has letter 'a'. 过滤/返回名称为字母“ a”的用户行。

I've looked at app.param() method of express framework but not sure how to go about! 我看过Express框架的app.param()方法,但不确定如何去做!

The :parameter will be listed as part of req.params you can then use it to filter your array. :parameter将作为req.params一部分列出,然后您可以使用它来过滤数组。

app.get('/agent/:letter', function (req, res, next) {
  var containsLetter = new RegExp(req.pararms.letter);
  res.json(users.filter(function (user) {
    return containersLetter.test(user.name);
  });
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM