Javascript 如何保持本地存储会话特定?

Javascript 如何保持本地存储会话特定?,javascript,html,session,local-storage,Javascript,Html,Session,Local Storage,因此,我们有一个web应用程序,可以通过电子邮件的链接进行访问。当用户单击链接时,我们调用web服务将必要的数据拉入客户端。然后,该数据在用户会话期间存储在客户端的本地存储中,并在会话结束后清除 这里的问题是,如果用户两次单击链接并注销其中一个会话,则两个会话的本地存储都会被清除 所以我一直在考虑解决这个问题,以下是我可能的解决方案: 对同一域的外部链接重复使用同一选项卡。但现在是这样 将会话Id附加到localstorage的密钥,并仅在注销时清除它们。但在这种情况下,如果有人没有正确注销,本

因此,我们有一个web应用程序,可以通过电子邮件的链接进行访问。当用户单击链接时,我们调用web服务将必要的数据拉入客户端。然后,该数据在用户会话期间存储在客户端的本地存储中,并在会话结束后清除

这里的问题是,如果用户两次单击链接并注销其中一个会话,则两个会话的本地存储都会被清除

所以我一直在考虑解决这个问题,以下是我可能的解决方案:

  • 对同一域的外部链接重复使用同一选项卡。但现在是这样
  • 将会话Id附加到localstorage的密钥,并仅在注销时清除它们。但在这种情况下,如果有人没有正确注销,本地存储项仍将保留,我们不希望这样

  • 因此,我想知道是否有办法保持本地存储会话的特定性,或者是否应该完全跳过本地存储。谢谢

    使用会话存储而不是本地存储。会话存储是特定于该选项卡的,这些存储将在该选项卡上清除。但是sessionStorage特定于从打开的点窗口到该窗口关闭的一个会话。

    您可以使用
    jQuery.data
    。是的,但是数据非常大并且非常复杂。sessionStorage特定于tab会话。因此,在选项卡关闭后,数据将被清除。