4

我试图找到一种方法将正则表达式输入到快速路由 URL,然后通过请求对象访问 URL 的可变部分。具体来说,我想路由到 url "/posts/" + 任意位数。有没有办法做到这一点?

例子:

/posts/54
/posts/2
/posts/546
4

2 回答 2

9

这应该这样做:

app.get('/posts/:id(\\d+)', function(req, res) {
    // id portion of the request is available as req.params.id
});

编辑:将正则表达式添加到路径以将其限制为数字

于 2012-08-25T16:15:37.963 回答
4

我同意约翰尼的观点,我唯一的补充是你可以为任意数量的级别执行此操作。例如:

app.get('/users/:id/:karma', function(req, res){
    //Both req.params.id and req.params.karma are available parameters.
});

您还应该查看 express 文档:http ://expressjs.com/api.html 。请求部分可能对您非常有用。

于 2012-08-25T16:19:27.823 回答