我需要获取服务器中间件上的 url(使用express.js)。我使用 req.url
但当 url 从 /#some/url
开始时 req.url 返回 /
...
与req.path
相同..
有没有办法获取express.js中#
后的url?
最佳答案
否。以 #
符号开头的 URL 部分永远不会发送到服务器。
URL中的#
符号是引入fragment identifier 。这用于链接到页面的特定部分。如果浏览器加载 /#some/url
,它将有效加载 /
,并跳到带有 id="some/url"
的 HTML 元素>(如果存在)。片段标识符仅与浏览器相关,因此不会随 HTTP 请求一起发送。
您可以做的是使用客户端Javascript读取window.location.hash
的值并将其发送到使用 XMLHttpRequest 的服务器。 (See other Stack Overflow post.)
关于javascript - 在express.js中间件请求中获取 "#"之后的url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17744003/