Как обойти ограничение в 5 мегабайт для LocalStorage?

Как обойти ограничение в 5 мегабайт (а по сути 2,5 мегабайта) для LocalStorage, и можно ли уже использовать IndexedDB или WebSQL для хранения данных пользователей в большинстве современных браузеров с большим, чем 5 мегабайт местом для оффлайн хранения?


Мне нужно хранить оффлайн массив строк, которые могут занимать до 50 мегабайт и более. Реализовывать LocalStorage легко и просто, но рано или поздно 5 мегабайт закончатся, что будет вызывать негатив.


Какие решения лучше использовать для оффлайн хранения данных?
  • Вопрос задан
  • 6582 просмотра
Пригласить эксперта
Ответы на вопрос 3
creage
@creage
50 метров оффлайн? Как будете решать проблему синхронизации, допустим, по жопорезу?

Может лучше подумать об отдельном десктопном/мобильном приложении? Хотя за 50 метров вас юзеры зарежут в любом случае.

P.S. IndexedDB доступен не везде, WebSQL тоже.
Ответ написан
Комментировать
olegbarabanov
@olegbarabanov
Программист, фрилансер (ИП)
манифест?

{ "permissions": [ "unlimitedStorage" ] }

IndexedDB — поддержка не только не везде, но и не вся.
webSQL — для IE нет поддержки, для Firefox есть расширение (вариант решения подойдет, если делается интранет приложение. Так никто ничего не будет специально ставить)
Ответ написан
Комментировать
Wev SQL (depricated) используется в хроме, сафари, опере и их мобильных версиях caniuse.com/sql-storage
IndexedDB используется в IE10, лисе и десктопном хроме caniuse.com/#feat=indexeddb.
Те то что ниже IE10 в пролете, там только localStorage (IE8 и IE9) и Вам скорее всего прийдется комбинировать IndexedDB и Web SQL для решения этой задачи.
Суть в том что реализация их API асинхронная, в отличии от синхронного localStorage, из-за чего могут возникать проблемы в реализации вместе со сторонними библиотеками (например хранения тайлов для google maps).

Некоторые браузеры спрашивают или сразу поддерживают больше 5 мб, которые прописаны в спецификации. В любом случае для localStorage хранение данные больше 5 мб это уже плюшки браузеров.
Ответ написан
Ваш ответ на вопрос

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

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