小程序爬坑
好久沒有使用過node.js了,今日閑來無事重溫一下node.js,發現新舊版本之間改變還是不少的,其中遇到一件小事而糾纏了不久,便是提交表單后在后臺使用req.body.**竟然提示undefined,后來細讀了下文檔,原來是在較新版本中的express組件中已經分離了body-parser這個中間件,不過在package.json中已經是默認依賴了的,如圖所示:
如果沒有默認依賴,需要手動添加,接著我們再看app.js,發現也已經默認初始化了這個組件
其實雖然說express分離出了body-parser組件,其實好像也并不需要我們另外配置什么,但是為什么在路由中仍然無法使用該組件呢?
其實解決方法非常簡單,只需要把
app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false }));- 1
- 2
這兩行配置代碼寫在路由配置之前,例如
var bodyParser = require('body-parser');var app = express();app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); //以下為路由配置 var routes = require('./routes/index'); var users = require('./routes/users'); ...other code...- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
到這里,發現已經可以照常利用rep.body.**獲取前端數據了
總結
- 上一篇: pat德才论
- 下一篇: #pragma once与#ifndef