get 请求数据:(req.query)
- 在 Express 中可以直接 req.query 来获取查询字符串的参数
- 返回对象数据(如:{ foo: ‘fun’ })
- 注意:req.query 只能拿到 get 请求
app.get('/about', function (req, res) {
console.log(req.query);// // { name: 'name', message: 'msg' }
res.send('你好!我是 Express!');
});
post 请求数据:(req.body)
在 Express 中没有内置获取表单 POST 请求体的 API,这里需要使用第三方包:body-parser
安装:
npm install -S body-parser
配置:
var express = require('express')
// 1.引包
var bodyParser = require('body-parser')
var app = express()
// 2.配置
// 只要加入下面配置,则在 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')
res.end(JSON.stringify(req.body, null, 2))
})
app.post('/post', function (req, res) {
console.log(req.body);// { name: 'name', message: 'msg' }
console.log(req.body.name);// name
});