当浏览器选项卡中的 url 更改时自动注销


Auto log out when url change in browser tab

我需要像大多数银行一样构建一个功能。哪里。。

如果用户在浏览器选项卡中登录了银行帐户,他/她再次更改浏览器的URL并移动到其他站点......然后通过单击浏览器的"返回"按钮再次进入银行页面..然后银行自动从那里注销用户站点。

我想也许通过java脚本我们可以做到这一点......但是,无法理解如何做到这一点。我正在使用PHP作为我的服务器端脚本。这是PHP可以做到这一点吗?

问候苏雷什

这不是一个java/PHP问题,而是取决于你想要实现的确切行为。

跟踪用户"实时"的唯一方法是通过javascript。因此,如果您想知道用户何时离开页面,您可以将自己绑定到事件侦听器,然后执行 ajax 调用或类似操作,使服务器端的会话无效。请记住,用户可能在禁用 JS 的情况下浏览您的网站,因此您需要在服务器端进行回退。

我建议您使用存储机制(内置的PHP会话存储或一些外部存储,如Couchbase或Redis,Memached,...)在服务器端实现会话存储,并将注销时间设置为合理的默认值(如果它像银行应用程序一样,则更低)。

如果您具备基础知识,请使用 JavaScript 来丰富用户体验,例如,在用户注销时显示"倒计时",并在每次用户与网站交互时向服务器发送会话刷新 ajax 调用以续订会话等。

有关更多详细信息,我需要您提出更多要求!