Работа с cookie

Материал из JQuery

Перейти к: навигация, поиск

jQuery Cookie

Параметры

Описание
Свойства

Плагин jQuery cookie предоставляет простой и удобный интерфейс для работы с кукисами на стороне клиента. Обычно кукисы используют на стороне сервера, однако в некоторых случаях, более уместно работать с ними именно на стороне клиента. Например, если в javascript-плагине необходимо организовать хранение состояния (например номер открытой вкладки в плагине вкладок), то чтобы избежать дополнительной серверной части для плагина, можно использовать кукисы на клиенте.

Подключение и использование

Чтобы плагин стал доступен на странице необходимо подключить файл с библиотекой jQuery и файл с плагином (можно скачать на github.com):

После этого, можно будет элементарно работать с кукисами:

в качестве значения куков следует использовать элементарные типы: числа и строки (а не массивы или объекты). Если нужно записать в один кукис несколько значений, можно перевести объект или массив со значениями в строку json (для этого понадобиться сторонний плагин jQuery-JSON) а при получении значения из куков, конвертировать строку обратно.


При установке кукисов, в третьем параметре функции $.cookie() можно указывать настройки. С помощью них можно задать время жизни кукисов, уточнить домен и/или часть path, в которых они должны быть видны и др. (см. вкладку свойства).

Замечание: при удалении куков, необходимо использовать те же параметры path, domain и secure, что и при их установке.

Информация

Размер плагина ~1k
Официальная страница



↓  название :типы значений (значение по умолчанию)
expires:integer(время жизни сессии)
В этом свойстве задается время жизни задаваемого кукиса (в днях). По умолчанию, кукисы будут жить, пока будет жить сессия пользователя на сайте.
// ------- Работа со свойством expires ---------
// в момент установки плагина на элемент
$.cookie("userName", "Neek", { expires: 7});
path:string('/')
Определяет, на какой части сайта, заданный кукис будет актуален. По умолчанию, на той части, где кукис был создан. (Для страницы с URL sitename.com/users/xost?uid=5, часть 'users/xost' будет той областью, за которую отвечает параметр path)
// ------- Работа со свойством path ---------
// в момент установки плагина на элемент
$.cookie("userName", "Neek", { path: '/users'});
domain:string(текущий домен)
Определяет, на каком домене, заданный кукис будет актуален. По умолчанию, это текущий домен. (Для страницы с URL sitename.com/users/xost?uid=5, часть 'sitename.com' будет той областью, за которую отвечает параметр domain)
// ------- Работа со свойством domain ---------
// в момент установки плагина на элемент
$.cookie("userName", "Neek", { domain: 'subdomain.sitename.com'});
secure:boolean(false)
Определяет, будет ли заданный кукис актуален только при доступе на сайт по защищенному протоколу (https).
// ------- Работа со свойством secure ---------
// в момент установки плагина на элемент
$.cookie("userName", "Neek", { secure: true});
raw:boolean(false)
По умолчанию, кукисы кодируются/декодируются при создании/чтении, с помощью encodeURIComponent/decodeURIComponent. Чтобы отключить эту опцию, необходимо установить свойство raw в true.
// ------- Работа со свойством raw ---------
// в момент установки плагина на элемент
$.cookie("userName", "Neek", { raw: true});