Задать вопрос
@accountnujen

Где можно хранить данные пользователя для синхронизации?

Веб приложение без backend. Все вычисления выполняются и хранятся на устройстве.
Хочется к такому приложению прикрутить синхронизацию.
Объём хранимых данных минимален: в худшем случае 5мб. В среднем 2мб. То есть хранить в виде зашифрованной строки возможно. Хочется получить вариант, который проще всего будет сделать пользователю.
Условный Google Drive отпадает, потому что требует backend для API.

Мои варианты:
1. Хранить в приватном github репозитории и взаимодействовать через API. Пользователь создаёт себе аккаунт (если такого нет), создаёт приватный репозиторий, токен и пользуемся благами синхронизации. CORS позволяет. Разумеется главный минус - это сложность реализации. Очень много шагов.
2. Хранить на яндекс диске. пользователь регистрируется, получает токен, получает синхронизацию. Здесь добавляется ещё загон с привязыванием номера телефона к аккаунту, иначе токен не дадут. Шагов примерно столько же. Иностранцев вовсе отпугнёт. Короче говоря тоже не вариант.

Что можно ещё использовать для решение задачи?
  • Вопрос задан
  • 221 просмотр
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Веб-разработчик Базовый
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Web-разработчик + ИИ
    8 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 3
sergey-gornostaev
@sergey-gornostaev
Седой и строгий
Firebase?
Ответ написан
Комментировать
@rPman
Сами же просите без бакэнда и сами же предлагаете варианты с чужими бакэндами google/yandex.

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

Настоятельно рекомендую не мучиться, найти vps-ку за условный 1$ в месяц и разместить там минимальный баэкнд. Не нужно пилить сложный, это вообще беда современных веб разработчиков, оверинженеринг 10k%
spoiler
(я видел буквально такие решения, когда вместо странички на 20кб с javascript и рюшечками, предлагают 10-мегабайтовые решения, с компиляцией css с исходниками на сотни килобайт)


p.s. есть решения через webrtc, если у вас есть сторонний канал передачи пары пакетов с данными инициализации (условно два пользователя друг другу qr-коды показали), метод в принципе рабочий, но для стабильного результата нужно будет реализовывать целую p2p сеть между пользователями, что бы удерживать подключение при разрывах связи. Ни в коем случае не рекомендация, это тупо очень сложно и главное никому не нужно.
Ответ написан
Комментировать
opium
@opium
Просто люблю качественно работать
Google Drive зря отпадает. Их API дёргается прямо из браузерного JS через OAuth с client ID, без server secret. appDataFolder — папка, невидимая пользователю в Drive (scope drive.appdata), только твоё приложение её видит. Кладёшь один зашифрованный sync.json, пользователь нажимает «войти через Google» и готово.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы