检测 chrome 是否正在加载缓存页面?

Jen*_*010 5 javascript google-chrome browser-cache express angularjs

这是其中之一,“我需要一种解决方法,以便在项目启动后不必忍受用户 1000 年的争​​吵”类型的问题:

我有一种情况,每当有人启动 Chrome 时,我都需要重新加载我的网站,而上次关闭浏览器时却没有关闭标签页。我们正在现代、MEAN 堆栈环境中重建一个古老的站点,我只知道当它启动时我会收到投诉。

换句话说(危险:伪代码)-

if client closed chrome with site open
  reauthenticate user
  redirect to home page
Run Code Online (Sandbox Code Playgroud)

我可以通过快速路由和护照身份验证完成最后两位,但是我如何检测客户端是否从他们的末端加载缓存页面?

cri*_*ror 1

是否可以简单地存储某种仅在实际登录后设置为 true 的 js 变量,或者 Chrome 也将其存储在关闭状态?

一个简单的例子来配合我的评论:

<html>
<head>
    <script>

        function DoMagic() {
            document.getElementById( "magic" ).innerHTML = "<h1>Hello World!</h1>";
        }

    </script>
</head>
<body>

    <div id="magic">Waiting for magic</div>
    <br>
    <input type="button" value="Do Magic" onclick="DoMagic();" />

</body>
</html>
Run Code Online (Sandbox Code Playgroud)
  • 在 Chrome 中打开它,div 上写着“等待魔法”。
  • 单击“Do Magic”div 读取“Hello World”。
  • 单击 X(不是页面,而是浏览器)关闭 Chrome。
  • 打开 Chrome。页面加载。Div 上写着“等待魔法”。

即使缓存是这样,在浏览器关闭之间也不会保留状态。我想你可以实现类似的东西来确保他们必须在浏览器关闭之间登录。也应该适用于所有浏览器。