解析表单post请求体
在Express中没有内置获取表单POST请求体的API,这里我们需要使用一个第三方包:body-parser;
安装:npm install --save body-parser;
配置:
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.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))
})
当以post请求/post的时候,执行指定的处理函数;
这样的话,我们就可以利用不同的请求方法让一个请求路径使用多次;
app.get('/',function(req,res){
res.render('index.html',{
comments:comments
})
})
app.get('/post',function(req,res){
res.render('post.html')
})
app.post('/post',function(req,res){
//1、获取表单post请求体数据;
//2、处理;
//3、发送响应;
//req.query只能拿get请求参数;
//post:
//res.send('post')
var comment=req.query;
comment.dateTime='2001-12-3'
comment.unshift(comment)
res.redirect('/')
})