我如何将参数解析为RESTful API

问题描述 投票:0回答:1

我正在尝试制作一个基本的RESTful API,该API在大多数情况下都有效,但是我想解析它的url参数,以便可以在一个调用中应用多个过滤器

我有以下代码:

app.get('/api/products/:id',(req, res) => {
  let sql = "SELECT * FROM products WHERE id="+req.params.id;
  let query = conn.query(sql, (err, results) => {
    if(err) throw err;
    res.send(JSON.stringify({"status": 200, "error": null, "response": results}));
  });
});

[当我发送这样的请求时,可以使用它来应用一个过滤器:

localhost/api/products/1

但是我想获得所有带有名称及其类别的产品:

IE,我想发送如下请求:localhost/api/products?name=stier&category=hammer我也希望它接受这样的请求localhost/api/products?category=hammer

这有可能吗,我该如何修改我的代码来做到这一点。

提前谢谢您

node.js json rest restful-url
1个回答
1
投票

您可以按照您提到的完全将query参数传递到该端点。您可以使用req.query

访问这些参数

对于:localhost/api/products?name=stier&category=hammerreq.query将包含:

{
   name: 'stier',
   category: 'hammer'
}
© www.soinside.com 2019 - 2024. All rights reserved.