node使用Express获取get和post参数的三种方式(附返回纯html文档和图片的方法)

先说下获取页面发送过来的参数,这个很关键,一般前台页面传递参数的方式主要就是2种,在URL中传递和get或post提交时传递参数。

第一种:在URL种的情况:
发送的是:htpp://root/name=hello
获取时使用:req.param(id)
完整一点的案例:

// 使用 req.param()获取参数
app.get('/about/:name',(req,res)=>{
  var pathData = req.param('name');
  res.send(pathData);
})

如果浏览器中打开的是:http://about/name=hello
那么获取到的参数就是:name=hello

第二种:通过get方式提交的参数使用req.query.id

完整案例:

app.get("/getData",function(req,res){
  var resId = req.query.id;
  var resName = req.query.name;
  var resAge = req.query.age;
  var data  = {"id":resId,"resname":resName} 
  res.json(data);
})

如果在浏览器的地址中是:http://getData?id=101&name=hello&age=18

那么这三个数据就分别可以通过req.query.id req.query.name req.query.age
来获得。

第三种:通过post的方式提交的参数使用req.body.name
这种方式需要提前加载body-parser

// 引入json解析中间件
var bodyParser = require('body-parser');
// 添加json解析
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));

完整案例:

app.post("/postData",function(req,res){
  var resId = req.body.id;
  var resName = req.body.name;
  var resAge = req.body.age;
  var data  = {"id":resId,"resname":resName} 
  res.json(data);
})

好了,获取参数的方式上面的三种够用了。接下来说下返回纯HTML的文档:
其实只要注意使用一下:——dirname 这个参数就够了。
下面的案例是只要访问跟路径就返回index.html 的文档。

app.get('/',function(req,res){
  res.sendFile(__dirname + '/index.html');
});

当然,返回一张图片就更简单了:

app.get('/img', function (req, res) {
  res.sendFile(__dirname +'/public/horo.png');
});
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值