Насколько устойчив локальное хранилище?

Я сильно зависит от localStorage для плагина, который я пишу. Все настройки пользователя хранятся в нем. Некоторые настройки требуют от пользователя записи регулярных выражений, и они будут огорчены, если в какой-то момент их правила регулярных выражений пропадут. Так что теперь мне интересно, насколько стойким является локальное хранилище.

Изспецификации:

Пользовательские агенты должны истекать данные из локальных областей хранения только по соображениям безопасности или по запросу пользователя.

Вышеприведенное выглядит так, будто оно работает так же, как куки на клиентской стороне. То есть когда пользователь очищает все данные браузера (историю, куки, кеш и т. д.), localStorage также будет усечен. Это предположение верно?

 Pacerier31 янв. 2017 г., 18:46
@PeeHaa, это не простоработай как печенье, но естьюридически определяется как «куки» слишком. Фактически, информация о хранилище отображается рядом с другими файлами cookie в URL.chrome:settings/cookies
 Corbin30 мар. 2012 г., 20:15
Учитывая, что браузеры решают, что является «причиной безопасности», в идеальном мире вы не предполагаете, что это продлится очень долго. Однако, вероятно, можно с уверенностью предположить, что оно сохраняется до тех пор, пока пользователь не сбросит его явно.
 Andreas07 авг. 2015 г., 12:04
Только одно предупреждение при использовании localStorage: похоже, он не работает надежно в Firefox 39, 38 и 37 (мы не проверяли ничего более старого). Примерно на 1% компьютеров наших пользователей localStorage теряется иногда во время просмотра нашего сайта, в то время как cookie-файл сессии сохраняется. Похоже, ошибка для меня.

Ответы на вопрос(5)

будьте очень осторожны. Последняя версия iOS (5.1 вне пределов моей головы) переместила данные localalstorage и localdb в часть кеша, которая регулярно очищается, то есть не является постоянной. Я пока не могу сказать, является ли это ошибкой или изменением политики.

 Trott31 авг. 2012 г., 00:45
Я считаю, что это верно для WebViews, но не для Safari.

не сильно зависит от локального хранилища.

Локальное хранилище, наряду с хранилищем сеансов, призвано заменить файлы cookie, определяя более согласованный API. Есть несколько отличий от файлов cookie:

Хотя файлы cookie доступны как со стороны клиента, так и со стороны сервера, веб-хранилище в целом и локальное хранилище, в частности, доступны только со стороны клиента.Увеличенная емкость (официальная для файлов cookie составляет 4 КБ) до более 5 МБ на домен (Firefox, Google Chrome и Opera и 10 МБ в IE).

ТакдаВаше предположение верно.

 josh373630 мар. 2012 г., 20:23
+1 - поэтому я бы использовал локальное хранилище в качестве кэша и для резервного копирования пользовательских данных на сервере. (Конечно, это предполагает наличие механизма входа в систему.)
 Tenali Raman23 окт. 2015 г., 15:44
Basically, you should not heavily depend on Local Storage. ... абсолютно !!

чтобы отметить об использовании локального хранилища. Это очень специфично для браузера. Если вы храните данные с помощью Firefox, они не будут доступны в Chrome или т. Д. Также, что касается очистки файлов cookie и сеансов, я заметил, что это также зависит от браузера, очищается ли локальное хранилище. Я бы очень подробно изучил детали, если вы действительно планируете полагаться на локальное хранилище для приложения.

 Moshe L03 мар. 2013 г., 09:44
Это верно и для печенья.
 Thomas Tempelmann02 февр. 2016 г., 14:32
Нет, это не обязательно верно для файлов cookie: в OSX приложения, использующие Webkit, по-видимому, делятся файлами cookie по моему опыту. Хотя я могу быть неправильно истолковывать эффекты.
 Jeffrey Sweeney30 мар. 2012 г., 20:27
Разве это не так с куки?
 GuyT17 янв. 2018 г., 07:22
С другой стороны, он пишет плагин, который, я полагаю, зависит от браузера.
Решение Вопроса

Хранилище DOM можно очистить с помощью «Инструменты -> Очистить недавнюю историю -> Файлы cookie», если временной диапазон «Все» (с помощью nsICookieManager :: removeAll).

https://developer.mozilla.org/en/DOM/Storage

В DOM Storageневозможно указать срок действия каких-либо ваших данных. Все правила истечения остаются на усмотрение пользователя. В случае с Mozilla большинство этих правил наследуются от правил истечения срока действия, связанных с Cookie. Из-за этого вы, вероятно, можете ожидать, что большинство ваших данных DOM Storage будут храниться как минимум сколько-нибудь значимое время.

http://ejohn.org/blog/dom-storage/

Chrome реализует это как кеш:

LocalStorage не является безопасным хранилищем

Локальное хранилище HTML5 сохраняет данные в незашифрованном виде в виде строкив штатном кеше браузера.

Упорство

На диске, пока не будет удален пользователем (удалить кэш) или приложением

https://developers.google.com/web-toolkit/doc/latest/DevGuideHtml5Storage

Что касается "замены для Cookie",не совсем

Файлы cookie и локальное хранилище действительно служат разным целям. Cookie-файлы предназначены главным образом для чтения на стороне сервера, LocalStorage может быть прочитан только на стороне клиента. Таким образом, вопрос в вашем приложении, кому нужны эти данные - клиент или сервер?

анных на клиенте. Этоне является разработан как «лучший cookie»: эта функция предназначена для Session Storage.

ИзДекабрь 2011 Рекомендация кандидата спецификации веб-хранилища,

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

Как данные на стороне клиента - они так же постоянны, какЛюбые данные на стороне клиента, в пределах ограничений размера, которые реализует браузер. Пользователи могут удалить его в любое время, открыть его в текстовом редакторе, отредактировать и т. Д., Как ЛЮБЫЕ данные на стороне клиента.

Ваш ответ на вопрос