Печенье в JavaСкрипт: пример установки, получения и удаления
Что такое файлы cookie?
Файл cookie — это часть данных, которая хранится на вашем компьютере и доступна вашему браузеру. Вы также могли сознательно или неосознанно воспользоваться преимуществами файлов cookie. Вы когда-нибудь сохраняли свой пароль Facebook, чтобы вам не приходилось вводить его каждый раз, когда вы пытаетесь войти в систему? Если да, то вы используете файлы cookie. Файлы cookie сохраняются как пары ключ/значение.
Зачем вам нужен файл cookie?
Связь между веб-браузер и сервер использует протокол без сохранения состояния с именем HTTP. Протокол без сохранения состояния рассматривает каждый запрос независимо. Таким образом, сервер не сохраняет данные после отправки их в браузер. Но во многих ситуациях данные потребуются снова. Вот и печенье на картинке. Благодаря файлам cookie веб-браузеру не придется связываться с сервером каждый раз, когда требуются данные. Вместо этого его можно получить непосредственно с компьютера.
Javascript Установить файл cookie
Вы можете создавать файлы cookie, используя document. свойство cookie, подобное этому.
document.cookie = "cookiename=cookievalue"
Вы даже можете добавить дату истечения срока действия вашего файла cookie, чтобы конкретный файл cookie был удален с компьютера в указанную дату. Дата истечения срока действия должна быть установлена в формате UTC/GMT. Если вы не установите дату истечения срока действия, файл cookie будет удален, когда пользователь закроет браузер.
document.cookie = "cookiename=cookievalue; expires= Thu, 21 Aug 2014 20:00:00 UTC"
Вы также можете установить домен и путь, чтобы указать, какому домену и каким каталогам в конкретном домене принадлежит файл cookie. По умолчанию файл cookie принадлежит странице, на которой он установлен.
document.cookie = "cookiename=cookievalue; expires= Thu, 21 Aug 2014 20:00:00 UTC; path=/ "
//создаем cookie с доменом текущей страницы и путем ко всему домену.
JavaСкрипт получения куки
Вы можете получить доступ к файлу cookie следующим образом, который вернет все файлы cookie, сохраненные для текущего домена.
var x = document.cookie
JavaСкрипт удаления куки
Чтобы удалить файл cookie, вам просто нужно установить значение файла cookie пустым и установить значение срока действия на прошедшую дату.
document.cookie = "cookiename= ; expires = Thu, 01 Jan 1970 00:00:00 GMT"
Попробуйте этот пример сами
Специальные инструкции, чтобы код заработал… Дважды нажмите кнопку запуска.
<html> <head> <title>Cookie!!!</title> <script type="text/javascript"> function createCookie(cookieName,cookieValue,daysToExpire) { var date = new Date(); date.setTime(date.getTime()+(daysToExpire*24*60*60*1000)); document.cookie = cookieName + "=" + cookieValue + "; expires=" + date.toGMTString(); } function accessCookie(cookieName) { var name = cookieName + "="; var allCookieArray = document.cookie.split(';'); for(var i=0; i<allCookieArray.length; i++) { var temp = allCookieArray[i].trim(); if (temp.indexOf(name)==0) return temp.substring(name.length,temp.length); } return ""; } function checkCookie() { var user = accessCookie("testCookie"); if (user!="") alert("Welcome Back " + user + "!!!"); else { user = prompt("Please enter your name"); num = prompt("How many days you want to store your name on your computer?"); if (user!="" && user!=null) { createCookie("testCookie", user, num); } } } </script> </head> <body onload="checkCookie()"></body> </html>