globalStorage и localStorage. Клиентские хранилища. Технологии будущего. Оптимизация структуры веб-страниц
userData behavior
Flash Local Shared Object
WHATWG DB Backend (openDatabase)
globalStorage и localStorage
Google Gears
Библиотеки для работы с клиентскими хранилищами
Резюме
Спецификация на globalStorage присутствует в ранних версиях черновика HTML5, откуда е? удалили из соображений безопасности. Основная идея globalStorage - дать разработчикам возможность обращаться к данным поддоменов, как это сделано в cookie.
Этот вид хранилища был реализован в FireFox 2 (и в Internet Explorer 8.0 beta 1), но уже в следующей версии браузера, возможность обращаться к данным поддоменов отключили. В такой «урезанной» версии globalStorage по возможностям эквивалентно хранилищу localStorage, которое заняло в HTML5 нишу своего небезопасного предшественника.
В настоящий момент localStorage поддерживается браузерами FireFox 3.5 и выше, Internet Explorer 8.0 (с версии beta2) и Safari 4.0.
Ограничения, накладываемые на размер хранилища, устанавливаются разными производителями браузеров по-разному, так в FireFox это 5МБ, а в IE8 - 10 миллионов байт (прич?м, учитывается место занятое не только значениями, но и именами ключей). Другое ограничение накладывается на имена ключей, в частности, в них не может быть пробелов.
function HTML5Storage() { if (window.localStorage) { this.storage = window.localStorage } else if (window.globalStorage) { this.storage = window.globalStorage[location.hostname || 'localhost.localdomain '] } else { return false }
this.get = function (name) { var out = this.storage.getItem(name); return out && out.value ? out.value : out; } this.set = function (name, value) { this.storage.setItem(name, value); }
this.del = function (name) { this.storage.removeItem(name) } }