5

我想要这样的路径:(/skittles?type[]=blue&type[]=green就像 a x-www-form-urlencoded,但这是对 api 的获取请求)。

因此,如果我有以下代码,我将如何将可选参数添加到路由路径(当前为 /skittles)?

app.get('/skittles', callback);
4

2 回答 2

4

您不需要将它们添加到路径中。您会在req.query对象中找到它们。

var util = require('util');

app.get('/skittles', function(req, res) {
  console.log(req.query);
  var type = req.query.type || [];
  console.log("type: "+util.inspect(type));
  res.send("Type: "+util.inspect(type));
});
于 2013-05-30T07:42:06.150 回答
-1

您可以像这样验证您在 req.body 或 req.query 中收到的输入请求参数。

app.post('/v1/api/test-api', function(req, res) {
   var parameters = [];
   if(req.body.userName !== undefined) {
       //DO SOMEHTING
       parameters.push({username: req.body.userName});
   }
   if(req.body.userId !== undefined) {
       //DO SOMEHTING

       parameters.push({userId: req.body.userId});
   }
   if(req.body.userEmail !== undefined) {
      //DO SOMEHTING
       parameters.push({userEmail: req.body.userEmail});
   }

   res.json({receivedParameters: parameters});

});
于 2015-09-16T10:07:52.823 回答