Веб-браузеры и серверы используют протокол HTTP для связи, а HTTP - это протокол без учета состояния. Но для коммерческого веб-сайта требуется поддерживать информацию сеанса между разными страницами. Например, одна регистрация пользователя заканчивается после завершения многих страниц. Но как поддерживать информацию о сеансах пользователей во всех веб-страницах.
Содержание:
Что такое Cookies?
Во многих ситуациях использование куки-файлов является наиболее эффективным методом запоминания и отслеживания предпочтений, покупок, комиссий и другой информации, необходимой для лучшего опыта посетителей или статистики сайта.
Как это работает?
Ваш сервер отправляет некоторые данные в браузер посетителя в виде файла cookie. Браузер может принять cookie. Если это так, оно хранится как простая текстовая запись на жестком диске посетителя. Теперь, когда посетитель прибывает на другую страницу вашего сайта, браузер отправляет тот же файл cookie на сервер для извлечения. После восстановления ваш сервер знает/запоминает, что было ранее сохранено.
Файлы cookie представляют собой запись текстовых данных из 5 полей переменной длины -
- expires - дата истечения срока действия файла cookie. Если это пустое, cookie истечет, когда посетитель покинет браузер.
- domain - доменное имя вашего сайта.
- path - путь к каталогу или веб-странице, в которой установлен файл cookie. Это может быть пустым, если вы хотите получить файл cookie из любого каталога или страницы.
- secure. Если это поле содержит слово «безопасно», cookie может быть восстановлен только с защищенного сервера. Если это поле пустое, таких ограничений не существует.
- Name = Value - Cookies устанавливаются и извлекаются в виде пар ключ-значение
Файлы cookie изначально были предназначены для программирования CGI. Данные, содержащиеся в файле cookie, автоматически передаются между веб-браузером и веб-сервером, поэтому скрипты CGI на сервере могут считывать и записывать значения cookie, которые хранятся на клиенте.
JavaScript также может обрабатывать файлы cookie, используя свойство cookie объекта Document. JavaScript может читать, создавать, изменять и удалять файлы cookie, которые применяются к текущей веб-странице.
Сохранение файлов cookie
Самый простой способ создания cookie - назначить строковое значение объекту document.cookie
, который выглядит следующим образом.
document.cookie = "key1 = value1; key2 = value2; expires = date";
Здесь атрибут expires не является обязательным. Если вы предоставите этот атрибут с допустимой датой или временем, то cookie истечет в заданную дату или время, а после этого значение cookie будет недоступно.
Примечание. Значения cookie могут не содержать точки с запятой, запятые или пробелы. По этой причине вы можете использовать функцию escape()
JavaScript для кодирования значения перед сохранением его в файле cookie. Если вы это сделаете, вам также придется использовать соответствующую функцию unescape()
, когда вы читаете значение cookie.
Попробуйте следующее. Он задает имя клиента во входном cookie.
Теперь у вашей машины есть файл cookie с именем name
. Вы можете установить несколько файлов cookie, используя несколько пар ключ = значение, разделенных запятой.
Чтение файлов cookie
Чтение файла cookie так же просто, как и запись одного, потому что значение объекта document.cookie
является файлом cookie. Таким образом, вы можете использовать эту строку всякий раз, когда хотите получить доступ к файлу cookie. Строка document.cookie
будет содержать список пар name = value
, разделенных точкой с запятой, где name - это имя файла cookie, а value - его строковое значение.
Вы можете использовать функцию split()
для разбиения строки на ключ и значения следующим образом:
Попробуйте следующий пример, чтобы получить все файлы cookie.
Примечание. Здесь length
- это метод класса Array, который возвращает длину массива. Мы обсудим Массивы в отдельной главе.
Примечание. На вашем компьютере могут быть установлены некоторые файлы cookie. В приведенном выше коде будут отображаться все файлы cookie, установленные на вашем компьютере.
Настройка даты истечения срока действия Cookies
Вы можете продлить срок действия файла cookie за пределами текущего сеанса браузера, установив дату истечения срока действия и сохранив дату истечения срока действия в файле cookie. Это можно сделать, установив атрибут «expires» в дату и время.
примерПопробуйте следующий пример. Он иллюстрирует, как продлить срок действия файла cookie на 1 месяц.
Удаление файла cookie
Иногда вам нужно удалить файл cookie, чтобы последующие попытки прочитать cookie ничего не возвращали. Для этого вам просто нужно установить дату истечения срока в прошлом.
примерПопробуйте следующий пример. Он иллюстрирует, как удалить файл cookie, установив дату его истечения на один месяц за текущую дату.
Понравилась статья? Поделитесь ею с друзьями и напишите отзыв в комментариях!
Новые статьи
- JavaScript - Совместимость с браузерами - 08/09/2018 15:52
- JavaScript - Карта изображений - 08/09/2018 15:52
- JavaScript - отладка - 08/09/2018 15:51
- JavaScript - Мультимедиа - 08/09/2018 15:51
- JavaScript - анимация - 08/09/2018 15:50
- JavaScript - подтверждение формы - 08/09/2018 15:50
- JavaScript - Обработка ошибок и исключений - 08/09/2018 15:49
- JavaScript - Объектная модель документа или DOM - 08/09/2018 15:49
- JavaScript - Регулярные выражения и объект RegExp - 08/09/2018 15:48
- JavaScript - объект Math - 08/09/2018 15:48
- JavaScript - объект Date - 08/09/2018 15:48
- JavaScript - объект Array - 08/09/2018 15:47
- JavaScript - объект Strings - 08/09/2018 15:47
- JavaScript - логические объекты - 08/09/2018 15:46
- JavaScript - Числовые объекты - 08/09/2018 15:46
- JavaScript - Обзор объектов - 08/09/2018 15:45
- JavaScript - Печать страницы - 08/09/2018 15:45
- JavaScript - Void - 08/09/2018 15:45
- JavaScript - диалоговые окна - 08/09/2018 15:44
- JavaScript - Redirect - 08/09/2018 15:44
Предыдущие статьи
- JavaScript - События - 08/09/2018 15:43
- JavaScript - функции - 08/09/2018 15:42
- JavaScript - управление циклом - 08/09/2018 15:41
- JavaScript - цикл for ... in - 08/09/2018 15:41
- JavaScript - For цикл - 08/09/2018 15:40
- JavaScript - циклы - 08/09/2018 15:40
- JavaScript - switch-case - 08/09/2018 15:39
- JavaScript - if ... else - 08/09/2018 15:39
- JavaScript - Операторы - 08/09/2018 15:38
- JavaScript - переменные - 08/09/2018 15:38
- JavaScript - размещение в файле HTML - 08/09/2018 15:37
- Включение JavaScript в браузерах - 08/09/2018 15:36
- JavaScript - Синтаксис - 08/09/2018 15:34
- JavaScript - Обзор - 08/09/2018 15:31
- Учебник Javascript - 08/09/2018 15:29