這些天在寫一個博客系統,前端使用vue,服務端使用node,然後node接收處理前端post傳過來的值時,連踩兩坑
第一個坑
前端已經正常傳值,後臺使用body-parser獲取值,發現無論如何得到的值都是undefined
let content = req.body.content
百度了大半天,終於找到了根源,因爲我傳的是流數據,而body-parser接收的是表單數據,肯定接收不到值,具體的解決方法,我參考了此博客,使用req.on去處理
第二個坑
值能獲取到了,但是想取其中某個字段的時候,發現字段不存在!!把值輸出了一下,發現長這樣的
{"content": "123456"}
以爲傳來的是json對象,沒想到是json字符串,不過找到原因就好辦了,把數據轉一下就行了
let data= JSON.parse(str)
let content = data.content
完整代碼
let str = '';
req.on('data', function (chunk) {
str += chunk
});
req.on('end', function () {
let data = JSON.parse(str);
let content = data.content
});