我的博客中有一些路线。 Strucrure看起来像这样:
/admin - admin
/login - login page
/videos - videocatalog
/:article - single article w/o category
/:category/:article -single article with category
我尝试使用
router.get('/!(admin):url', function(req, res) {
机器人没有得到像我需要的东西
答案 0 :(得分:0)
我不建议您在博客上使用此架构,因为快递不会知道 /:article 和 /:category 之间的区别。
我要做的是在 / articles 父路线中设置这些内容,如下所示:
router.get('/admin', function (req, res) { });
router.get('/login', function (req, res) { });
router.get('/videos', function (req, res) { });
router.get('/articles/:article', function (req, res) { });
router.get('/articles/:categoryOrArticle/:article?', function (req, res) {
if(req.params.article) {
// If all parameters are passed to the url the user is accessing a categorized article
let category = req.params.categoryOrArticle;
let article = req.params.article;
} else {
// Else, user is accessing a non-categorized article
let article = req.params.categoryOrArticle;
}
});
要获得文章或类别,只需使用 req.params.article 或 req.params.category 。