2014-09-02 30 views
1

我跑Node.js的上下面的代码使用Express 4.7.2Node.js的快递req.query未定义

express.get('/test1',function(req, res) { 
    var ttt = false; 
    if (req.query.username === undefined) ttt = true; 
    res.json({query: ttt}); 
}); 

我所说的网址:

{{}协议}:// {{服务器}}/test1的用户名= 1

而且我得到的结果是:

{查询:真正}

这都说明req.query.username确实undefined

我缺少什么?怎么没有传入查询参数?

+0

你是怎么“调用URL”的?使用cURL?浏览器?还有别的吗? – mscdex 2014-09-02 03:55:34

+0

浏览器(镀铬)和邮差。同样的结果 – 2014-09-02 03:56:56

回答

2

还有你的代码工作正常,我与节点v0.10.30和表达4.8.7:

var app = require('express')(); 

app.get('/test1',function(req, res) { 
    var ttt = false; 
    if (req.query.username === undefined) ttt = true; 
    res.json({query: ttt}); 
}); 

app.listen(8000); 

我然后导航到http://localhost:8000/test1?username=1并显示{"query":false}

+1

但是'username = 1'并且它应该返回'{query:true}' – naomik 2014-09-02 03:59:42

+3

不适用于原始代码中的逻辑。我只是逐字地复制它。 – mscdex 2014-09-02 04:01:24

+0

我有同样的问题:'req.query'对我来说是不确定的:https://stackoverflow.com/q/45928112/630169问题可能是什么?! – 2017-08-29 00:03:03