在不同的浏览器中打开页面时,令牌没有保存在$ window.sessionStorage中

时间:2015-03-25 09:21:42

标签: javascript angularjs cookies token

我在$ window.sessioStorage中登录我的应用程序后初始化生成的令牌。

var token = this.$window.sessionStorage["apiKey"];

但是当我复制网址(登录后)并在不同浏览器中打开时,此标记似乎未定义。我将重定向回登录页面。 $ window.sessionStorage是否在同一浏览器窗口中保存变量的值?或者即使我在不​​同的浏览器窗口中打开页面,还有什么可以保留令牌的值?

1 个答案:

答案 0 :(得分:3)

这是正确的行为

  

sessionStorage属性允许您访问会话存储   宾语。 sessionStorage类似于localStorage,唯一的区别   是存储在localStorage中的数据没有到期设置数据   存储在sessionStorage中的页面会话结束时将被清除。一个   只要浏览器处于打开状态并且幸存下来,页面会话就会持续   页面重新加载和恢复。在新选项卡或窗口中打开页面   将导致新的会话启动。

即使浏览器已关闭也可以保留信息,并使用localStorage重新开启其他时间,但正如我所说,如果您打开其他浏览器,则必须重新设置项目。

本地存储示例here

代码示例:

// set something in localStorage
localStorage.setItem('bgcolor', 'green');


// get something from localStorage
localStorage.getItem('bgcolor') // it will output green