Browser persistence — техника, позволяющая хранить в браузере довольно большие объемы данных, которые в отличие от cookie не отсылаются на сервер при каждом запросе.
Все уже написано до меня, но на хабре никаких более-менее подробных упоминаний не нашел, поэтому написал краткий обзор — как это работает и собрал ссылки для более подробного изучения.
В Firefox 2+ реализован стандарт Web Storage спецификации HTML5. Стандарт предусматривает собой хранение данных в объектах localStorage и sessionStorage, которые отличаются областью видимости данных.
Собственно, сохранять и читать данные очень просто — в key-value парах этих объектов (не только в FF но и в остальных браузерах, поддерживающих Web storage):
В Firefox есть также globalStorage не описаный в спецификации.
Да, localStorage реализован только в FF версий 3.5+.
Ограничение размера данных — 5MB на домен. Почитать про них можно на сайте Mozilla Developer Center.
IE — в восьмой версии так же реализован Web Storage.
Размер хранимых данных — до 10MB.
В версиях IE 5-7 есть интерфейс userData behavior. Ограничение данных: 128K на страницу и 1024K на домен.
Web storage реализован в только в четвертой версии.
В остальных браузерах с этим как-то глухо. Если в Chrome я наше упоминание о том что в dev версиях браузера можно включить поддержку localStorage, то относительно Opera — не нашел вообще никаких упоминаний.
Но все можно исправить, использовав в этих браузерах небольшой flash-ролик в котором задействован интерфейс sharedObjects. То есть, проверили web storage и userData. Не работает? Вставляем flash и используем его.
Готовую к использованию библиотеку, написанную Ильей Кантором можно найти здесь: browserpersistence.ru.
Более подробная статья Ильи Кантора на http://javascript.ru/unsorted/storage.
Статья John Resig (автора jQuery) о DOM Storage: http://ejohn.org/blog/dom-storage/
И еще одна библиотека PersistJS, но ее я еще не пробовал: http://pablotron.org/?cid=1557
Все уже написано до меня, но на хабре никаких более-менее подробных упоминаний не нашел, поэтому написал краткий обзор — как это работает и собрал ссылки для более подробного изучения.
Как это работает
Firefox
В Firefox 2+ реализован стандарт Web Storage спецификации HTML5. Стандарт предусматривает собой хранение данных в объектах localStorage и sessionStorage, которые отличаются областью видимости данных.
Собственно, сохранять и читать данные очень просто — в key-value парах этих объектов (не только в FF но и в остальных браузерах, поддерживающих Web storage):
sessionStorage["name"] = "Вася";
var name = sessionStorage["name"];
В Firefox есть также globalStorage не описаный в спецификации.
Да, localStorage реализован только в FF версий 3.5+.
Ограничение размера данных — 5MB на домен. Почитать про них можно на сайте Mozilla Developer Center.
Internet Explorer
IE — в восьмой версии так же реализован Web Storage.
Размер хранимых данных — до 10MB.
В версиях IE 5-7 есть интерфейс userData behavior. Ограничение данных: 128K на страницу и 1024K на домен.
Safari
Web storage реализован в только в четвертой версии.
Остальные браузеры
В остальных браузерах с этим как-то глухо. Если в Chrome я наше упоминание о том что в dev версиях браузера можно включить поддержку localStorage, то относительно Opera — не нашел вообще никаких упоминаний.
Но все можно исправить, использовав в этих браузерах небольшой flash-ролик в котором задействован интерфейс sharedObjects. То есть, проверили web storage и userData. Не работает? Вставляем flash и используем его.
Ссылки
Готовую к использованию библиотеку, написанную Ильей Кантором можно найти здесь: browserpersistence.ru.
Более подробная статья Ильи Кантора на http://javascript.ru/unsorted/storage.
Статья John Resig (автора jQuery) о DOM Storage: http://ejohn.org/blog/dom-storage/
И еще одна библиотека PersistJS, но ее я еще не пробовал: http://pablotron.org/?cid=1557