google-chrome - Chrome.Storage.Sync 的存储配额?

标签 google-chrome google-chrome-extension

我的扩展程序将使用 Chrome.Storage.Sync.Set 将这样的数据保存在字符串中,然后我将使用正则表达式/类似的内容进行解释:

<ID>TEXTBOX</ID><STYLE>BORDER:1PX SOLID BLACK; BACKGROUND-COLOR:YELLOW;
FONT-SIZE:18PX; FONT-FAMILY:ARIAL</STYLE><OTHER></OTHER>

我希望将所有保存的数据放在一个存储项中。即:

<ID>TEXTBOX</ID><STYLE>BORDER:1PX SOLID BLACK; BACKGROUND-COLOR:YELLOW;
FONT-SIZE:18PX; FONT-FAMILY:ARIAL</STYLE><OTHER></OTHER>
<ID>TEXTBOX</ID><STYLE>BORDER:1PX SOLID BLACK; BACKGROUND-COLOR:YELLOW;
FONT-SIZE:18PX; FONT-FAMILY:ARIAL</STYLE><OTHER></OTHER>
<ID>TEXTBOX</ID><STYLE>BORDER:1PX SOLID BLACK; BACKGROUND-COLOR:YELLOW;
FONT-SIZE:18PX; FONT-FAMILY:ARIAL</STYLE><OTHER></OTHER>
<ID>TEXTBOX</ID><STYLE>BORDER:1PX SOLID BLACK; BACKGROUND-COLOR:YELLOW;
FONT-SIZE:18PX; FONT-FAMILY:ARIAL</STYLE><OTHER></OTHER>

本页here对于每个“同步存储中的单个项目,通过其值的 JSON 字符串化加上其 key 长度来衡量。”,大小限制为 8,192 字节。 据任何人所知,我是否可能超出限制?假设我有 40 个 ID..

最佳答案

是的。是的,您可能会浏览limit 。您当前的示例有 4 个 ID,大约有半千字节。所以你已经用完了 64 个。

然后您的 set 操作将失败,并且在您的回调中 chrome.runtime.lastError 将被设置:

chrome.storage.sync.set(data, function() {
  if(chrome.runtime.lastError) {
    // Uh-oh..
  }
});

请注意:

  • 如果您确实不需要跨设备同步所有这些数据,请使用 chrome.storage.local。它有更慷慨的配额 5,242,880 字节..
  • ..如果您请求“unlimitedStorage”权限,该权限将会被删除。
  • 正如 Google 文档所说,以一种半开玩笑的方式:

    chrome.storage is not a big truck. It's a series of tubes. And if you don't understand, those tubes can be filled, and if they are filled when you put your message in, it gets in line, and it's going to be delayed by anyone that puts into that tube enormous amounts of material.

    同步存储需要 Google 基础设施的支持 - 他们不愿意无限量地免费提供。

  • 将所有这些数据放入存储中效率很低。对其进行分析并存储分析结果 - 您将在存储中获得更清晰的数据。

附注HTML is not a regular language.

关于google-chrome - Chrome.Storage.Sync 的存储配额?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29732514/

相关文章:

google-chrome - 如何从网页上的十六进制字符串获取颜色?例如,通过选择它

php - Magento php 错误,仅出现在 Chrome 中

javascript - 从 url 获取第一个和最后一个文件夹

javascript - 间歇性 "Not a Product"Javascript 错误

google-chrome - 在 Chrome 中从用户脚本转换时保持相同的 ID

javascript - 如何更改仅带有弹出窗口的事件选项卡的 Chrome 扩展程序图标?

javascript - Opera 和 Safari 中的 Navigation Timing API 实现

google-chrome - Chrome 过渡 Flash

Chrome 响应后关闭 TCP 连接

javascript - Math.random() 返回值大于一?