Html 5 storage websql и localStorage: как долго сохраняются данные?

С новым Html 5 есть 3 основных способа хранения данных в вашем браузере:

  • LocalStorage
  • База данных WebSQL DB
  • Индексированный DB

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

Спасибо

Ответ 1

Самый правильный ответ на этот вопрос: вы не знаете.

Пользователь может стереть свои локальные данные в любое время, и любой тип локального хранилища зависит от предпочтений пользователя и считается чрезвычайно изменчивым. Тем не менее, существует неопределенное время истечения срока действия, в соответствии с спецификациями Web Storage:

Истекшие сохраненные данные

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

     

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

     

Это может ограничить способность сайта отслеживать пользователя, так как сайт сможет отслеживать пользователя только через несколько сеансов, когда он аутентифицируется с самим сайтом (например, совершая покупку или войдя в службу).

     

Однако это также снижает полезность API в качестве механизма долговременного хранения. Это также может привести к сбою данных пользователя, если пользователь не полностью понимает последствия истечения срока действия данных.

Источник: http://dev.w3.org/html5/webstorage/

Ответ 2

  • WebSQL устарел. См. здесь.
  • Индексированная БД является постоянной.
  • localStorage также является постоянным (не путать с sessionStorage).

"Persistent" поставляется с предостережением, которое указал atornblad: он остается постоянным, пока пользователь не решит уничтожить свои собственные данные.