当前位置: 首页 > 知识库问答 >
问题:

如何在NodeJS中获取完整的动态URL?

谈琛
2023-03-14

已经有一个类似的线程,看起来很像,但这里我有一些不同的问题。

我想要完整的URL,其中URL是动态的。我所有的页面都使用一个通用的nunjuk模板。

让我们面对现实吧。假设我有一个URL路径:

/blog/one/two/three

值得注意的是,“博客”是静态的,但“一”、“二”和“三”是变量,它们将根据我网站上请求的博客文章而改变。

我使用以下代码通过传递来获取URL:post“但是当我在URL中添加更多路径子目录(如“1”、“2”或“3”)时,我如何得到“模板未找到”错误。

router.get('/blog/:post', function (req, res) {
            var path = req.params.post;

            var title2 = JSONFile[path].title;
            var date2 = JSONFile[path].date;
            var author2 = JSONFile[path].author;
            var content2 = JSONFile[path].content;

            res.render('blogposts.html', {
                    title : title2,
                    date: "date2",
                    author: "author2",
                    content: "content2"
            });
    });

我的问题是:如何获得“/blog”之后的所有动态URL子路径?记住,子路径也可以扩展到“四”或“五”等等。

共有1个答案

令狐宏伟
2023-03-14

我假设有3个参数位于1、2和3的位置,它们都是动态的,你想在代码中使用这些参数后提供一些内容。你可以用这个代替它,

/blog/:year/:month/:day

这样,所有3个参数都是动态的,可以这样访问,

var year = req.params['year'],
    month = req.params['month'],
    day = req.params['day'];

如果URL中有3个以上的参数,则可以像这样附加更多的占位符

/blog/:one/:two/:three/:four/:five 

所有这些都可以从req.params访问

 类似资料:
  • 问题内容: 假设我的示例网址是 http://example.com/one/two 我说我有以下路线 值将是。 如何在Express中获取 完整的URL ?例如,在上述情况下,我想收到。 问题答案: 该协议可从下载。这里的文档 在express 3.0之前,除非您看到已设置并具有value 的协议,否则可以假定为该协议,在这种情况下,您知道这是您的协议 主机来自Gopal指示 希望您的URL中不

  • 假设我的示例url是 http://example.com/one/two 我说我有以下路线 的值将为。 如何获取Express中的完整url?例如,在上面的情况下,我希望收到。

  • 问题内容: 这个问题的答案是 社区的努力。编辑现有答案以改善此职位。它目前不接受新的答案或互动。 我使用以下代码来获取完整的URL: 问题在于,我在自己的中使用了一些掩码,因此我们在URL中看到的并不总是文件的真实路径。 我需要的是获取URL,写在URL中的内容,仅此而已-完整的URL。 我需要了解它在Web浏览器的导航栏中的显示方式,而不是服务器上文件的真实路径。 问题答案: 看一下,即 请注意

  • 问题内容: 使用angular时,在视图内获取对象的首选方法是什么? 看起来好像有这个项目,但是看起来维护得不好。 https://github.com/gdi2290/angular- momentjs 问题答案: 有一个更受欢迎的angular-moment项目… https://github.com/urish/angular- moment 有了它,您可以像这样注入瞬间… jsfiddle

  • 问题内容: https://example.com/some/path在没有Sites模块的情况下,如何在Django中获取完整/绝对URL(例如)?那真是愚蠢……我不需要查询数据库来获取URL! 我想用它 问题答案: 根据请求使用方便的request.build_absolute_uri()方法,将其传递给相对URL,它将为你提供完整的URL。 默认情况下,返回的绝对URL ,但是你可以将相对U

  • 问题内容: 有没有一种简单的方法可以打印的完整路径? 的 应该打印 问题答案: 使用 readlink :