javascript - 如何存储浏览器范围的 localStorage 值?

标签 javascript google-chrome local-storage tracking

假设我打开 Chrome 并跳转到 javascript 控制台。如果我跑

localStorage.setItem('test', 'THIS IS A VALUE');

然后关闭浏览器,重新打开,然后运行

localStorage.getItem('test');

结果将是可以预见的“这是一个值”。但是,如果我要导航到打开浏览器时所在的不同页面,即不在 about:blank; 上。或者它可能是什么主页,运行 .getItem 将导致 null。

好像localStorage是特定于某个页面的。有没有一种方法可以在一个页面上存储一个可以在任何页面上使用的值?

假设我想在一个页面上生成一个 ID,然后在一个完全不相关的网站上检查相同的 ID,这可能吗?现在我已经把它打出来了,听起来有点安全风险。

最佳答案

每个域都有一个单独的 LocalStorage 存储,很像 cookie。考虑替代方案:如果 LocalStorage 是全局的,不同的网站可以读取和写入彼此的存储值。

存储跨多个站点“跟踪”用户的持久数据在某种程度上是有意为之的困难。您将需要明确采取跨域的操作(例如,从另一个站点加载内容或将数据发布到另一个站点)以实现此目的。

关于javascript - 如何存储浏览器范围的 localStorage 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11254804/

相关文章:

javascript - Webpack 4 错误地渲染选择元素

javascript - HTML5 : Changing the value of items in localStorage

javascript - 替换现有内容=本地存​​储+现有内容。 JavaScript、网络存储、本地存储

html - 在 HTML5/Chrome 中获取 AudioBuffer 的 onended 事件

backbone.js - 如何清除 Backbone 本地存储

javascript - 我应该使用 jQuery.inArray() 吗?

javascript - 如何从 Angular 2 中的 JSON 对象读取想要的数据?

javascript - 如何返回 p 元素的行数?

javascript - 打开网站时 Chrome 会自动打开 PWA

android - 如何让我的 1024 宽网页显示在我的 Chrome 中的 Nexus 7 上?