2013-03-20 101 views
1

我有接受JSON無論是在URL或郵件正文(當然POST)快速解析內容PARAMS

app.post('/book/addBooks', function (req, res) { 
... 

我知道新書JSON從服務器端傳來的是端點要或者是查詢參數

<server>/book/addBooks?books=[{...},{...}] 

或從身體

<server>/book/addBooks 

體:

books=[{...},{...}] 

基本上我檢查兩種:

req.body.books 

req.query.books 

採摘有內容的第一個。有沒有更好的方式來表達「書籍」?

注意:在你可以傳遞url或body的事實之前,我正在編寫一個模仿另一個API的服務,因爲其他的API也允許這個垃圾。

+0

你這是什麼MEA ñ「更好的方式來看書」? – Trevor 2013-03-21 02:47:34

+1

http://expressjs.com/api.html#req.param – 2013-03-21 04:49:06

回答

1

從快車文檔

req.param(名稱)

返回時存在的PARAM NAME值。

//?名稱= TOBI req.param( '姓名')// => 「TOBI」

// POST名稱= TOBI req.param( '姓名')// => 「TOBI」爲/用戶

// /用戶/ TOBI /:名稱req.param( '姓名')// => 「TOBI」

這裏是查找順序:

查找按以下順序執行:

req.params 
req.body 
req.query 
+0

'req.param('name')'現在被取消了。 – petur 2018-02-19 15:11:38

0

情況下使用 req.params:當是休息值例子

/users/:id 

req.body:當POST方法發送數據 req.query:當方法獲取例如發送數據

/users?thisIsaVar=thisIsaValue 

OK,expressjs POST方法體