Используя JavaScript, как мне навсегда удалить запись синхронизации хранилища, хранящуюся в профиле Firefox? - PullRequest
0 голосов
/ 28 мая 2018

Я создал веб-расширение Firefox, которое хранит данные, описывающие поисковые системы, в синхронизации хранилища.Данные на самом деле хранятся в файле с именем storage-sync.sqlite.Я заметил, что browser.storage.sync.remove фактически изменяет скрытое свойство "_status" с "созданного" на "удаленный", но фактически не удаляет запись.

Возможно ли навсегда удалить всю запись из js-скрипта в моем веб-расширении?

1 Ответ

0 голосов
/ 29 мая 2018

Короче говоря: нет, статус используется для целей синхронизации.

Kinto (серверная часть хранилища, используемая для синхронизации) устанавливает поле _status таким образом, чтобы другие браузеры синхронизировались с текущим браузером.знаю "эй, я должен удалить это".Я понятия не имею, когда он действительно удален, но я не думаю, что он останется навсегда.

Замечание о паролях от Kinto, которое, кажется, подтверждает функцию _status для storage-sync.sqlite:

Мы определяем изменение в килобайтах, сохраняя текущий килобайт (в виде хэша) в самой записи набора ключей.Мы «обновляем» эту запись набора ключей текущим хешем в килобайтах при каждом вызове sync ().kinto.js пытается отслеживать состояние набора ключей в поле с именем _status - оно должно быть «синхронизировано», если оно совпадает с версией, которую мы ожидаем на сервере, и оно должно быть «обновлено», если мыизменил его и не толкнул его на сервер.Поэтому после возможного обновления хеша (или просто замены его на то, что уже есть), мы проверяем, обновлено ли кольцо ключей, и если это так, попробуйте загрузить его на сервер.Поскольку шифрование происходит «точно в срок», это приводит к повторной загрузке набора ключей, но шифруется новым килобайтом.

https://wiki.mozilla.org/CloudServices/Sync/ExtensionStorage_Design_Doc#Password_changes

...