使用NodeJS重写URL

时间:2015-10-12 14:55:35

标签: node.js express

我想自定义我的网址重写,但似乎无法正常使用。

我的旧代码:

var rewrite = require('express-urlrewrite');

exports.rewrite = function(app){
  app.use(rewrite('/p/:id/:seoUrl', '/page/show/$1/$2'));
}

在我的浏览器中:http://mysite/p/1/seo-title(此网址有效)

我的新代码:

var rewrite = require('express-urlrewrite');

exports.rewrite = function(app){
  app.use(rewrite('/:seoUrl', '/page/show/$1/$2'));
}

在我的浏览器中:http://mysite/seo-title(找不到ID)

使用NodeJS,有没有办法在网址中排除ID?

1 个答案:

答案 0 :(得分:0)

好。如果你仔细看看这个:'/page/show/$1/$2'你可能会注意到它接受了两个参数。

自您删除:id后,您必须使用静态ID替换$1或将其完全删除,并且必须将$2更改为$1 < / p>

所以最后您的代码可能如下所示:app.use(rewrite('/:seoUrl', '/page/show/1/$1'));

或者像这样:app.use(rewrite('/:seoUrl', '/page/show/$1'));