Node.js 如何处理express.js路线?

Node.js 如何处理express.js路线?,node.js,routes,express,Node.js,Routes,Express,我有一个 app.get('/home',requireLogin,routes.home) exports.home = function(req, res){ res.render('index', { title: 'home' }); }; app.get('/home/menu/someting',requireLogin,routes.newRoutes) 现在如果我想让我的url看起来像这样 /home/menu/someting 我必须创建另一条路线吗 app.get(

我有一个

app.get('/home',requireLogin,routes.home)

exports.home = function(req, res){
 res.render('index', { title: 'home' });
};
app.get('/home/menu/someting',requireLogin,routes.newRoutes)
现在如果我想让我的url看起来像这样

/home/menu/someting
我必须创建另一条路线吗

app.get('/home',requireLogin,routes.home)

exports.home = function(req, res){
 res.render('index', { title: 'home' });
};
app.get('/home/menu/someting',requireLogin,routes.newRoutes)
或者我可以修改routes.home来处理rest url,比如如果有第二个/something做某事

我知道我可以有home/:参数,但我需要url看起来完全像home/menu/something,然后我会有:参数


只需回答我这是否可以在相同的路由中处理/home和/home/菜单,没有参数

您可以在路由中同时使用通配符(
*
)和命名参数(
:parameter

app.get('/home/menu/:something', ...)
然后使用
req.params.something
作为值


您可以在路由中同时使用通配符(
*
)和命名参数(
:parameter

app.get('/home/menu/:something', ...)
然后使用
req.params.something
作为值


您考虑过阅读Express文档吗?当然,我尝试过使用if(req.params[0]),然后做一些事情,但似乎当url为home/something/route时,路由甚至不会转到routes.home,因为
/home/something
/home
不匹配。但它确实匹配
/home/*
/home/:param
。下次阅读整个文档,它足够短,可以在不到3分钟的时间内完成。我知道,但我真的希望url看起来像home/menu/某物,在某物之后,我将有:参数。因此路径是
/home/menu/something/:parameter
…您考虑过阅读Express文档吗?当然,我考虑过,我尝试使用if(req.params[0])然后做一些事情,但似乎当url为home/something/route时,路由甚至不会转到routes.home,因为
/home/something
不匹配
/home
。但它确实匹配
/home/*
/home/:param
。下次阅读整个文档,它足够短,可以在不到3分钟的时间内完成。我知道,但我真的希望url完全像home/menu/something一样,在某个东西之后,我将有:参数。因此路径是
/home/menu/something/:parameter
…我知道,但我真的希望url完全像home/menu/something一样,在我得到了:参数之后,请定义你认为的“参数”。您所说的是查询字符串的一部分吗(例如“home/menu/something?param=value”)?如果是这样,您当然可以在路由中测试它的值(事实上,就路由而言,这就是您所能做的一切,因为Express的路由器只查看URL的路径部分)。P.S.S.使用“恰好回答我”这样的语言几乎可以保证你被否决,并且让人们不愿意回答你的问题。我知道,但是我真的希望URL看起来像家/菜单/某物,然后我会有:参数:请定义你认为的“参数”。您所说的是查询字符串的一部分吗(例如“home/menu/something?param=value”)?如果是这样,您当然可以在路由中测试它的值(事实上,就路由而言,这就是您所能做的一切,因为Express的路由器只查看URL的路径部分)。另外,使用“只回答我”这样的语言几乎肯定会让你落选,让人们不愿意回答你的问题。