我有一个使用参数的节点表达端点。
app.get('/api/viewevents/:category', ec.getEventsByCat)
getEventsByCat: (req, res, next) => {
let {params} = req;
console.log(req.params.category)
req.app.get('db').get_events_by_category([req.params.category])
.then(events => res.status(200).send(events))
.catch(() => res.status(500).send());
},
当我使用单字参数调用我的端点时,它会成功返回。我的一些潜在参数不止一个字,我试图找到正确的语法来保持两个字串在一起。
例如,请求:
'/api/viewevents/infrastructure'
或
'/api/viewevents/environmental'
效果很好,但是这样的请求不会......
'/api/viewevents/household+tasks'
或
'/api/viewevents/disaster+relief'
可能没有用Google搜索正确的方式来获得我正在寻找的答案
答案 0 :(得分:0)
使用类似
的内容app.get('/endpoint/:var1/:var2', function(req, res) {
var data = {
"data": {
"var1": req.params.var1,
"var2": req.params.var2
}
};
send.json(data);
});
所以在你的情况下
app.get('/api/viewevents/:category1/:category2', ec.getEventsByCat)
getEventsByCat: (req, res, next) => {
let {params} = req;
console.log(req.params.category1)
req.app.get('db').get_events_by_category([req.params.category1])
.then(events => res.status(200).send(events))
.catch(() => res.status(500).send());
},
您必须进行更多更改才能使代码正确处理您希望的功能的两个变量