我正在制作一个扩展,应该在其后台脚本中包含一些变量,该变量应该对每个用户都是唯一的,并且不得更改。我能够在Firefox中解决这个问题,因为它可以生成内联扩展包并安装它没有问题。 就chrome而言,我不能依赖cookie,session或localstorage,因为如果用户删除了他的浏览历史记录,则可以删除它。 然后我的问题很简单,是否有可能在使用链接这样从chrome webstore安装扩展时传递变量,例如: https://chrome.google.com/webstore/detail/search-by-image-by-google/dajedkncpodkggklbegccjpmnglmnflm?id=somevar
答案 0 :(得分:-1)
您可以在Chrome中使用同步存储:https://developer.chrome.com/extensions/storage 它在后台使用Google云端硬盘来存储数据。即使用户清除浏览器数据,它也将保持不变。 用户不会在驱动器上看到此数据,因为它们在驱动器的UI中不可见(文件被隐藏),因此他可能无法删除它。
但是,您必须考虑用户未登录Chrome或用户已禁用同步选项的情况。在这种情况下,storage.sync的行为类似于storage.local。
即使用户清除浏览数据,存储在storage.local中的数据也将保留。它们将仅在卸载时删除。
修改强> 数据使用syncFileSystem API存储在Google云端硬盘上 - 而不是存储.sync。但是它并没有改变我写的解决方案。