Node JS – Express.js通过多个参数来获取查询

我对JavaScript和Node JS很陌生,我有这样的情况。 当我尝试使用单个参数调用get express.js ,一切正常,但是当我尝试使用多个参数调用get时,它将修剪查询。 例如,我有这样的呼叫和function

 app.get('path/data', myFunc); // in another file function myFunc(req, res) { // do some stuff } 

当url是path/data?id=5path/data?name=foo一切都很好。 但是当我使用例如像path/data?id=5&name=foo url path/data?id=5&name=foo在myFunc的URL我得到的path/data?id=5 。 所以我得到了url的第一部分 – 什么是之前&签署。

现在我做错了什么? 有什么我失踪? 如何在myFunc获取整个url而不被修剪?

我发现了这个问题。 我正在通过curl请求,事实certificate,如果在url中有一个& ,shell命令修剪。 所以这里不需要添加引号

 curl "path/data?id=5&name=foo" 

使用

 app.get('path/data?:id?:name') 

为了检索值,使用req.query.idreq.query.name

要访问REST api,您需要点击: http:// localhost:8080 / demo?id = 3&name = stack

所以,通过这个你可以在你的API中添加多个参数。

希望这可以帮助。