原生node中获取get/post请求参数的方式

原生node中怎么获取get/post请求参数

1. 处理get请求参数

node有自己的核心模块,在这里就用到了url模块。
url.parse(); 方法可以将一个完整的URL地址,分为很多部分,常用的有:host、port、pathname、path、query。
第一个参数是地址,
第二个参数默认是false,设置为ture后,其query属性就会从查询字符串格式(“a=1&b=2”)转换为了对象格式({a: 1,b: 2})。

var urlObj = url.parse(req.url ,true);
 var query = urlObj.query;
console.log(urlObj);
console.log(query);
//结果
Url {
  protocol: null,
  slashes: null,
  auth: null,
  host: null,
  port: null,
  hostname: null,
  hash: null,
  search: '?a=9&c=5',
  query: [Object: null prototype] { a: '9', c: '5' },
  pathname: '/index.html',
  path: '/index.html?a=9&c=5',
  href: '/index.html?a=9&c=5'
}

[Object: null prototype] { a: '9', c: '5' }
2. 处理post请求参数

获得post参数对象,需要用到第三方包querystring

//1.创建空字符叠加数据片段
var data = '';

//2.注册data事件接收数据(每当收到一段表单提交的数据,该方法会执行一次)
req.on('data', function (chunk) {
    // chunk 默认是一个二进制数据,和 data 拼接会自动 toString
    data += chunk;
});

// 3.当接收表单提交的数据完毕之后,就可以进一步处理了
//注册end事件,所有数据接收完成会执行一次该方法
//使用querystring对url进行反序列化(解析url将&和=拆分成键值对),得到一个对象
req.on('end', function () {
    console.log(data);
    var dataObject = querystring.parse(data);
    console.log(dataObject);
});
express获取参数

1.获取请求参数对象req.query

req.query;

注意: 它不仅针对于get请求,只要是前端在链接后以查询字符串传给后台的,都可以用这种方式获取

2.获取post请求参数对象req.body
body-parser是express常用的一个中间件,用来解析表单的post请求数据
body-parser用来处理不同类型的请求体、不同的编码、不同的压缩类型等

 //配置
var bodyParser = require("body-parser");
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())

//使用
req.body;
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值