国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

Nodejs express獲取POST參數(shù)值

2019-06-15 08:30:13 16951

學(xué)習(xí) nodejs,獲取url post傳回的參數(shù)時(shí),會(huì)發(fā)生和我一樣的問題,今天就來解決這個(gè)小麻煩

node.js不像php這種老牌后端語(yǔ)言有特定的獲取外部參數(shù)的做法,畢竟是個(gè)新生力量,希望后來的版本能夠更加便捷高效


//正常的獲取值
app.get('/', (req, res) => {
  console.log(req.query);
  res.send('完成');
});
app.post('/', (req, res) => {
  console.log(req.body);
  res.send('完成');
});

正常輸出的話,你的預(yù)想是這樣的...

// GET請(qǐng)求
{
  name: '馮小賢',
  age: '18'
}
完成

// POST請(qǐng)求
{
  name: '馮小賢',
  age: '18'
}
完成

然而并不是?。?!

// 兩次的輸出會(huì)是這樣?。?!
{ }
undefined

這是因?yàn)槲覀冞@里缺少一個(gè)模塊,express的中間件 body-parser

官方說明
Node.js body parsing middleware.
Parse incoming request bodies in a middleware before your handlers, available under the req.body property.

基本就是說,解析客戶端請(qǐng)求的body中的內(nèi)容,JSON編碼處理和url編碼處理


接下來我們就來安裝 body-parser

// 安裝 body-parser
npm install body-parser

// 導(dǎo)入 app.js
var bodyParser = require('body-parser');
app.use(bodyParser());

//這樣就可以使用 req.body 來獲取 post 傳遞來的值了
app.post('/', (req, res) => {
  console.log(req.body);
  res.send('完成');
});

// json就是用  app.use(bodyParser.json())


提交成功!非常感謝您的反饋,我們會(huì)繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問題: