首页 >web前端 >js教程 >如何在 JavaScript 中可靠地获取之前的 URL?

如何在 JavaScript 中可靠地获取之前的 URL?

DDD
DDD原创
2024-11-28 12:59:11325浏览

How Can I Reliably Get the Previous URL in JavaScript?

在 JavaScript 中确定上一个 URL

在 JavaScript 中,获取用户访问过的上一个 URL 可能很棘手。但是,可以采用多种方法。

使用 document.referrer:

如果用户导航到当前页面,则 document.referrer 属性提供上一页的 URL通过超链接的页面。可以通过如下方式获取:

console.log("Previous URL: " + document.referrer);

document.referrer的局限性:

  • 用户直接在地址中输入URL是不可靠的栏或提交表单。
  • 在某些具有安全意识的浏览器中无法访问,例如Safari。

使用 window.history 进行历史记录管理:

window.history 允许操作浏览器的历史记录,但不直接提供对 URL 的访问。但是,history.state 对象可用于存储自定义 URL 属性:

history.state = { prevUrl: location.href };

然后,您可以在上一页中检索它:

const prevUrl = history.state && history.state.prevUrl;

其他方法:

  • Cookie: 设置存储前一个 URL 的 cookie 是一个可行的选择,但需要额外的服务器端逻辑。
  • 参数跟踪:将参数附加到包含前一个 URL 的当前 URL,但是此方法如果用户频繁导航,可能会使 URL 变得混乱。

安全注意事项:

提供对先前 URL 的访问会引发安全和隐私问题,因为它可能允许恶意网站跟踪用户浏览历史记录。因此,浏览器对 URL 可访问性实施了限制。

以上是如何在 JavaScript 中可靠地获取之前的 URL?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn