2014-02-18 58 views
2

有沒有辦法讓所有使用express.js發送的參數進入一次?我知道如何分別瞭解GET/POST,但有沒有辦法一次完成所有事情?如何獲取express.js中的所有參數(post/get/etc)

到目前爲止我還沒有發現任何有關這方面的信息,特別是對它進行調試非常有用。

當然req.param(key)的作品,但我想有一個所有參數的列表,不必檢索它們,只是看到它們。

編輯:添加路由信息:

consoleDev('Url: ' + req.method + ' ' + req.baseUrl + req._parsedUrl.href, 'debug'); 
consoleDev('Options: ' + JSON.stringify(options), 'debug'); 
consoleDev('Params: ' + Object.keys(req.params), 'debug'); 
consoleDev('Params: ' + (req.param('test')), 'debug'); 

控制檯:

debug: Url: GET http://localhost:5000/?test=5000 
debug: Options: {"controllerName":"home","methodName":"index"} 
debug: Params: 
debug: Params: 5000 
+0

改變你對'app.all( 'routename' ...' –

回答

3

我忘了我創造了這個話題,幾個月前,創造了一個又一個,我回答了這個問題:

您正在尋找req.body,其中包含解析POST體。 (假設你有中間件解析它)

見express.bodyParser()

How log express.js POST parameters

0

如果你只是想查看過你可以做

console.dir(req.params); 

或者你的價值觀可以通過使用這樣的東西獲得密鑰列表:

keys = Object.keys(req.params); 
console.log(keys); 
+1

路線'req.param '是一個函數''req.params'是一個數組,但是當我發送GET/POST PARAMS時總是空的 – Vadorequest

+0

我的錯誤,我剛剛編輯了我的答案以反映req.params,正如我最初的意圖。在POST上空,你可能會在你的代碼中缺少app.use(express.bodyParser());但是奇怪的是,它們在GET上也是空的,你能否在你的問題中包含你的路線? –

+0

完成。你怎麼看?它只是沒有找到鑰匙,但是當我明確地稱它爲鑰匙時。 – Vadorequest

相關問題