Node.js 获取传递的数据:get、post、param

node写完服务器端,表单传输的数据在服务器端如何打印出来:用一个简单的html文件包含一个表加上一个Node.js express 模块完成这个数据的获取
1、get方法:首先get方法速度快,保密性差,使用req.query可获得get请求的数据,返回的是对象

一个login.html 表单用来传输数据,文件放到public文件下,以便调用:

<form method="get" action="/mylogin">
	用户名:<input type='text' name='uname'><br>
	用户ID:<input type='text' name='upassword'><br>
	<input type='submit'> 
</form>

一个服务器端,方法为get,使用req.query来获取传递的信息然后打印出来:

const express=require('express');
var server=express();
server.listen(8080);
server.use(express.static('public'));
server.get('/mylogin',(req,res)=>{
	var obj=req.query;
    console.log(obj);
    res.send('OK');
});

运行:
在这里插入图片描述
在这里插入图片描述

然后在用户名和用户ID栏输入内容,浏览器界面内容为OK,服务器端命令行下会打印出传输输入的信息:
在这里插入图片描述

2、post方法,使用post方法传输,然后获取传输到信息:
需要引入body-parser中间件:中间会使用urlencode({extended:false})这个方法将传输的信息解析为对象
然后使用req.body可以获取传输的信息,具体代码如下:

//引入body-parser中间件
const bodyParser=require('body-parser');
const express=require('express');
var server=express();
server.listen(8080);
server.use(express.static('public'));
//根据表单提交,写对应的路由

//中间件将post请求的数据直接解析为对象
server.use(bodyParser.urlencoded({
	extended:false
	//不使用第三方的qs模块,会使用querystring模块将查询字符串解析为对象
}));
server.post('/mylogin',(req,res)=>{
	//获取post请求的数据
	console.log(req.body);
	res.send('OK');
});

结果:在这里插入图片描述

3、最后还有一种params的方式
方法是req.params可以用来获取传输的数据,这里面URL的写法为’/detail/:lid’
代码如下:

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

//准备路由,商品详情的路由
//get   /detail
//:lid设置接收数据的名称为lid
server.get('/detail/:lid',(req,res)=>{
	//获取路由传递的数据
	console.log(req.params);
    res.send('OK');
});

结果图:

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值