Как синхронизировать данные расширения Chrome на разных компьютерах? - PullRequest
23 голосов
/ 04 февраля 2011

У меня есть расширение, где пользователи ведут список ссылок. Было бы неплохо синхронизировать эти данные между компьютерами (на работе и дома). Каковы возможные решения?

Chrome имеет опцию синхронизации расширений, но я не уверен, синхронизирует ли он данные или нет (я был бы удивлен, если да). Даже если это произойдет, не все захотят синхронизировать все остальные расширения.

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

Какие внешние сайты я могу использовать? Что-то простое в использовании и связано с учетной записью Google?

(я не хочу создавать собственный сайт для этого)

Ответы [ 2 ]

27 голосов
/ 05 февраля 2011

Изменить : Начиная с Chrome 20 и выше, вы можете использовать модуль chrome.storage для сохранения в облаке.

chrome.experimental.storage.sync.set({'settingAlwaysOn': true}, function() {
  console.log('Saved option in the cloud');
});

До Chrome 20

Вы правы, параметры Chrome Sync для расширений (в настройках) не синхронизируют данные расширений.Единственный способ синхронизировать эти данные - через стороннего поставщика.

Поскольку вы исключили использование закладок, это имеет смысл, если пользователи не хотят, чтобы закладки синхронизировались.

Каждый раз, когда высохранить данные через хранилище (Web SQL Storage, localStorage, IndexDB), захватить этот объект и сериализовать его в JSON (через JSON.stringify) и отправить в какой-либо онлайн-сервис, такой как Google Docs.Это было бы довольно сложно для Web SQL Storage и IndexDB, вам пришлось бы сделать свой собственный импортер и экспортер.Для localStorage это довольно просто, так как это пара ключ / значение.

Требуется некоторая работа, чтобы связать его с аккаунтом Google (например, Docs ), вам придется использовать OAuth исделайте сантехнику, чтобы подключить ваше расширение к услуге.После того, как вы подключены, не так уж сложно поддерживать состояние.

Удачи:)

26 голосов
/ 29 июня 2012

Chrome 20 поддерживает chrome.storage.sync API. Кажется, он идеально соответствует вашим требованиям.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...