Node.js 使用NodeJS重写URL
我想自定义我的URL重写,但它似乎没有像我希望的那样工作 我的旧代码:Node.js 使用NodeJS重写URL,node.js,express,Node.js,Express,我想自定义我的URL重写,但它似乎没有像我希望的那样工作 我的旧代码: var rewrite = require('express-urlrewrite'); exports.rewrite = function(app){ app.use(rewrite('/p/:id/:seoUrl', '/page/show/$1/$2')); } 在我的浏览器中:(此URL有效) 我的新代码: var rewrite = require('express-urlrewrite'); expo
var rewrite = require('express-urlrewrite');
exports.rewrite = function(app){
app.use(rewrite('/p/:id/:seoUrl', '/page/show/$1/$2'));
}
在我的浏览器中:(此URL有效)
我的新代码:
var rewrite = require('express-urlrewrite');
exports.rewrite = function(app){
app.use(rewrite('/:seoUrl', '/page/show/$1/$2'));
}
在我的浏览器中:(找不到ID)
使用NodeJS,有没有办法排除URL中的ID?好的。如果仔细看一下:
“/page/show/$1/$2”
,您可能会注意到它接受两个参数
由于您删除了:id
,您必须用静态id替换$1
,或者完全删除它,还必须将$2
更改为$1
因此,最终您的代码可能如下所示:app.use(rewrite('/:seoUrl','/page/show/1/$1')代码>
或者像这样:app.use(重写('/:seoUrl','/page/show/$1')代码>是的,我知道,但是使用NodeJS有办法自定义url并删除ID吗:seoUrl
是格式化的URL,但我还需要ID来显示页面…@tonymx227好的,所以在我添加了两个示例后,您没有阅读我的文本。再看一看。我读了第二个示例,但它发送的是:seoUrl
,而不是:id
。我想发送:id
,但不想在url中显示id
。@tonymx227您要求从路由中删除:id
。如果您仍然需要内部id,您应该使用第一个示例,并将1更改为您要引用的页面id。好的,但我要引用的页面id是动态的。。。这取决于页面。用户可以选择要显示的页面。。。