Если у ваших пользователей есть действительная учетная запись, к которой они подключаются на вашем сервере, вы можете сохранить информацию на стороне сервера и просто добавить небольшой javascript на каждую страницу, для которой эти данные будут необходимы с соответствующими данными.Когда вы визуализируете страницу на стороне сервера, вы можете определить пользовательский объект в javascript с соответствующими атрибутами, установленными для значений данных, на которые затем можно ссылаться на стороне клиента.Таким образом, вы включаете только те данные, которые необходимы для данной страницы, одни и те же пользовательские данные доступны независимо от того, с какого компьютера пользователь входит в систему (не полагаясь на постоянные файлы cookie).Если большие фрагменты данных нужны только изредка, и вы не хотите включать их в страницу, если они необходимы, то сделайте эти фрагменты данных запрашиваемыми через ajax / json, чтобы их можно было получать только при необходимости.
Если вы все еще намереваетесь хранить его только локально, тогда файлы cookie или локальное хранилище HTML5 - это ваши единственные варианты, а файлы cookie будут вашим единственным кросс-браузерным вариантом, охватывающим все используемые браузеры.В дополнение к сложности реализации, вы можете объединить ряд предложений:
- Всегда перенаправлять на www.domain.com, чтобы все действия пользователя были в одном домене.
- Использовать локальное хранилище HTML5, когда оно доступно (перенаправление на шаге 1 предотвращает блокировку субдомена).
- Возврат к хранилищу файлов cookie, когда локальное хранилище HTML5 недоступно.
Можно предположительно написать или найти абстракцию для локального хранилища HTML5 и файлов cookie, чтобы 99% кода могли быть независимыми от того, какой механизм хранилища фактически использовался.Похоже, что есть некоторые плагины jQuery, которые делают именно это.