2014-09-02 69 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