我想要这样的路径:(/skittles?type[]=blue&type[]=green
就像 a x-www-form-urlencoded
,但这是对 api 的获取请求)。
因此,如果我有以下代码,我将如何将可选参数添加到路由路径(当前为 /skittles)?
app.get('/skittles', callback);
您不需要将它们添加到路径中。您会在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));
});
您可以像这样验证您在 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});
});