1

我在 html5 中构建了一个小型 todo 应用程序。到目前为止工作正常,但我有一个问题:如果用户访问http://www.mydomain.com/他会被提示登录。如果他登录/提供不同的模板 -> 我的主应用程序模板。另外,为会话处理设置了一个 cookie。

现在他可以添加/删除/编辑他的待办事项。当他在线时,待办事项会保存在服务器上。我还为我的站点添加了缓存清单,并在他离线时使用本地存储来保存他的待办事项。到目前为止,这工作正常。

我的问题:如果用户在线并将自己从站点注销,并且服务器不再提供主应用程序模板,则浏览器将使用站点的离线版本。但他应该只在浏览器离线时使用它,而不是在服务器在同一路径上发送另一个模板时使用。

有人给我提示吗?提前致谢!

4

1 回答 1

0

使用此函数获取存储在您的客户端计算机上的 cookie。如果它返回 null 则意味着用户已注销。每次加载页面时都应该这样做。您还可以将用户重定向到登录页面。

    var function getCookie(c_name)
        {
        var i,x,y,ARRcookies=document.cookie.split(";");
        for (i=0;i<ARRcookies.length;i++)
        {
          x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
          y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
          x=x.replace(/^\s+|\s+$/g,"");
          if (x==c_name)
            {
            return unescape(y);
            }
          }
        }

var cookie = getCookie("myDomainAuthenticationCookie");

if(cookie == null)
{
window.location.href = "/myDomain.com/Accounts/Login"
}
于 2012-08-08T07:58:19.497 回答