在我们的一个用户抱怨并运行了一些测试之后,火狐15和16 (可能还有更旧的版本)会出现,所以如果禁用cookie,也会禁用localStorage。您甚至不能为它创建一个多边形填充,因为每当您尝试访问window.localStorage时,您都会得到Error: The operation is insecure.抛出一个try catch将让您检查它是否已禁用,但不允许您用自己的解决方案替换变量。以下快速填充将无法工作,因为FF忽略设置变量,并在尝试访问变量时抛出相同的错误:
try
当应用程序刷新时,调用一个自定义的handleAuthentication()函数,该函数解析URL散列片段并设置用户会话,这涉及到在localStorage中存储访问令牌、过期时间和用户信息,以便在刷新时提供持久性我发现原因是对auth0client.client.userInfo()的调用是异步的,所以在检索要存储在localStorage中的用户信息时会出现轻微的延迟。因此,当主页加载和调用auth.getUserInfo()时,用户信息最初可能会从localStorage中丢失,因此,我得到的user is undefined错误大