nodejs路由路径参数

本文介绍了Node.js中如何使用路由路径参数来处理动态请求。通过在路由路径中包含变量,如`/user/:id`,变量部分将被捕获到`req.params`对象中,使得同一路由能应对多种类似请求,例如处理`/user`和`/username`等不同的URL。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在定义路由匹配路径的时候:

app.get('/click',function(req,res){
    res.send('click');
})

单一的固定静态url,满足不了大量的动态处理,可以把代码改为:

app.get('/click/:id',function(req,res){
    var id = req.params.id;
    res.send();
})

像:id这样的正则会被放到req.params对象中。

var arr = {
    "beijing":{
        "mary":"my name is mary"
    },
    "shanghai":{
        "tony":"my name is tony"
    }
}
app.get('/click/:city/:name',function(req,res,next){
    var info = arr[req.params.city][req.params.name];
    if(!info) return next();//不存在的话最终会落入404中间件。
    res.send('description',info);
})

这样就可以满足一些动态的请求。

某些正则表示可以直接用在路径中,
比如要用同一个路由处理 /user和/username 可以这样写:

app.get('/user(name)?',function(req,res){
    res.send('user');
})

处理请求:

res.query //处理get请求;
res.body  //处理post请求
res.params  //处理get和post请求,但是查找的优先级为:params->body->query
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值