Chrome扩展程序是否拥有自己的localStorage

时间:2017-03-25 10:55:14

标签: javascript html5 google-chrome google-chrome-extension local-storage

我正在创建一个Chrome扩展程序,它可以获取当前活动文本框并将预定义文本放入其中。

我想使用localStorage,问题是。 扩展程序是否有自己的localStorage,还是必须使用网站上的LS?

如果扩展程序没有自己的LS,如何在本地计算机上保存一些数据呢?

2 个答案:

答案 0 :(得分:3)

答案取决于扩展名是否为content script

如果它是内容脚本,则会在页面的原点中运行,因此使用页面2017-03-27T06:03:27.182+0000 I STORAGE [initandlisten] exception in initAndListen: 20 Attempted to create a lock file on a read-only directory: /path/to/data, terminating

如果它不是内容脚本,那么根据this answer有关存储限制的问题,是的,您的扩展程序会获得自己的本地存储,因为它的来源是localStorage。每个来源都存储chrome-extension://EXTENSIONIDHERE,因此您的扩展程序将拥有自己的本地存储空间。

作为替代方案,正如我在评论中提到的,您可以使用chrome.storage(可用于内容脚本和非内容脚本等),它具有同步选项,可以存储对象而不仅仅是字符串,以及各种其他优点。

答案 1 :(得分:0)

Google Chrome发布了存储API:http://developer.chrome.com/extensions/storage.html

问题1:但我想使用localStorage,问题是。扩展是否有自己的localStorage(我使用LS作为缩写)或者必须使用网站上的LS答案:是问题2:如果扩展没有自己的LS,我怎样才能实现保存一些数据本地电脑?答:它有,所以它通过了。