###获取post请求数据
在express中没有内置获取表单post请求体的api,我们需要使用一个第三方包‘body-parser‘来获取数据
###安装
配置解析表单POST请求体插件(注意:一定要在app.use(router之前)
var express = require(‘express‘) // 引包 var bodyParser = require(‘body-parser‘) var app = express() // 配置body-parser // 只要加入这个配置,则在req请求对象上会多出来一个属性:body // 也就是说可以直接通过req.body来获取表单post请求数据 // parse application/x-www-form-urlencoded app.use(bodyParser.urlencoded({ extended: false })) // parse application/json app.use(bodyParser.json())
###使用
//官方文档中的使用
app.use(function (req, res) { res.setHeader(‘Content-Type‘, ‘text/plain‘) res.write(‘you posted:\n‘) // 可以通过req.body来获取表单请求数据 res.end(JSON.stringify(req.body, null, 2)) })
//自己小案例中的使用 app.post(‘/addMeg‘,function(req,res){ fs.readFile(‘./view/index.html‘,function(err,data){ if(err){ return res.end(‘404 Not Found.‘) } // 拿到用户传入的信息 var userData = req.body; // 得到当前时间 userData.dataTime = time() // 将用户信息保存到数组中 comments.unshift(userData) // 重定向 res.redirect(‘/‘) }) })
结果: