express中间件—body-parser获取post、get数据

13 篇文章 0 订阅
8 篇文章 0 订阅

1.post请求——req.query

//form.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <form action="http://localhost:8080/user"  method='get'>
        账号:<input type="text" name="name">
        <input type="submit" value="提交">
    </form>
</body>
</html>

//server.js
const express=require('express');
var server=express();
server.listen(8080);


server.get('/user',function(req,res){
    console.log(req.query); 
})

经测试,我们可以通过req.query得到get请求的参数。

在express中,已经封装好获取get参数的方法,即req.query,但是post请求的参数却没有被封装,需要我们借助中间件(body-parser)来获取。

 

2.post请求——中间件body-parser

express框架内置body-parser中间件,不需要在单独安装,我们可以使用它来获取post参数。现在我们修改form.html的method属性为post提交,然后修改server.js

const express=require('express');
const server=express();
const bodyParser = require('body-parser');

server.listen(8080,function(){
    console.log('http://localhost:8080');
});
server.use(bodyParser.urlencoded()); //调用中间件
server.post('/user',function(req,res){
    console.log(req.body); 
})

经测试,我们已经可以通过req.body得到post请求的参数。

1.express通过use来调用中间件server.use(中间件函数)
2.通过server.use(bodyParser.urlencoded())调用中间件后,中间件的作用将会在下面所有的代码中生效,所以req会增加body参数
3.bodyParser其实还有很多参数配置,我们这里面并没有介绍,具体可以到github上面找到官方文档



作者:YINdevelop
链接:https://www.jianshu.com/p/6acc7c1ef1db
来源:简书

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值