Express不会返回所有查询字符串参数

时间:2014-04-14 09:51:38

标签: node.js express

路线

app.get('/pdf/:id', function(req, res) {

请求

GET http://localhost/pdf/123?option=456&clientId=789

我只得到

req.query == { option: '456' }
req.params == { id: '123' }

为什么第二个查询参数会被切断?我的分隔符是标准的''

2 个答案:

答案 0 :(得分:22)

如果您使用curl或某些终端命令,&那里有一个特殊的意义。在引号内尝试使用它作为

curl 'http://localhost/pdf/123?option=456&clientId=789'

答案 1 :(得分:1)

此代码正常运行:

app.get('/pdf/:id', function(req, res) {
    console.log(req.params);
    console.log(req.query);

    res.end();
});

输出:

[ id: '123' ]
{ option: '456', clientId: '789' }
GET /pdf/123?option=456&clientId=789 200 1ms