在chrome扩展中存储大量键/值对

时间:2014-08-04 08:34:14

标签: google-chrome-extension

我正在努力使自己成为一个chrome扩展程序,从页面收集数据并填充我的弹出窗口(项目列表),为此我需要保存内容。

我希望对我的弹出列表中的大型项目列表(pageUrl,pageSelectedText,pageLinks,Date,..)等进行CRUD操作。

我知道我有html5 localStorage和chrome的storage.sync.set但是对于这些存储我找不到关于如何存储多个键/值的示例,而且当列表变大时我还有超出配额的风险吗?

问题:如果我存储在例如key" pageUrl"那显然我每次都会覆盖那个键吗?

猜猜我需要id,就像普通的数据库里面我有id = 1,2,... n 存储增加的键/值对列表的最佳做法是什么?

我可以使用像indexedDB这样的浏览器数据库,如果是这样,我仍然可以使用chromeedDB的同步功能,或者我是否需要在网络服务器上使用自己的同步服务?

PS。您如何看待"口袋" (以前:稍后阅读)扩展会节省吗?

我想使用更简单的解决方案,所以如果我可以使用storage.sync.set为同一个东西存储多个密钥,那么自己生成密钥是一个不错的解决方案:

keyName = pageUrl + Id;

1 个答案:

答案 0 :(得分:1)

您可以在Chrome扩展程序中使用IndexedDB没问题。但是,如果您希望Chrome同步数据,则必须使用chrome.storage.sync。 Pocket拥有自己的API服务器,用于存储数据。