» Главная
eXcode.ru » Статьи » Web
» Новости
» Опросы
» Файлы
» Журнал



Пользователей: 0
Гостей: 7





Установка Cookie




Автор: Котеров Д.В.

Мы подошли к вопросу: как же сценарий может установить Cookie в браузере пользователя. Ведь он работает "на одном конце провода", а пользователь — на другом. Решение довольно логично: команда установки Cookie — это просто один из заголовков ответа, передаваемых сервером браузеру. То есть, перед тем как выводить Content-type, мы можем указать некоторые команды для установки Cookie. Выглядит такая команда следующим образом (разумеется, как и всякий заголовок, записывается она в одну строку):

Set-Cookie: name=value; expires=дата; domain=имя_хоста; path=путь; secure

Существует и другой подход активизировать Cookie — при помощи HTML-тэга <meta>. Соответственно, как только браузер увидит такой тэг, он займется обработкой Cookie. Формат тэга такой:

<meta http-equiv="Set-Cookie" content="name=value; expires=дата; domain=имя_хоста; path=путь; secure" >

Мы можем видеть, что даже названия параметров в этих двух способах одинаковы. Какой из них выбрать — решать вам: если все заголовки уже выведены к тому моменту, когда вам потребовалось установить Cookie, используйте тэг <meta>. В противном случае лучше взять на вооружение заголовки, т. к. они не видны пользователю, а чем пользователь меньше видит при просмотре исходного текста страницы в браузере — тем лучше нам, программистам.

Примечание

Возможно, вы спросите, нахмурив брови: "Что же, с точки зрения программиста хороший пользователь — слепой пользователь." Тогда я отвечу: "Что вы, нет и еще раз нет! Такой пользователь хорош лишь для дизайнера, для программиста же желателен пользователь безрукий (или, по крайней мере, лишенный клавиатуры и мыши)".

Вот что означают параметры Cookie:

name

Вместо этой строки нужно задать имя, закрепленное за Cookie. Имя должно быть URL-кодированным текстом, т. е. состоять только из алфавитно-цифровых символов. Впрочем, обычно имена для Cookies выбираются именно так, чтобы их URL-кодированная форма совпадала с оригиналом.

value

Текст, который будет рассматриваться как значение Cookie. Важно отметить, что этот текст (ровно как и строка названия Cookie) должен быть URL-кодирован. Таким образом, я должен отметить неприятный факт, что придется писать еще и функцию URL-кодирования (которая, кстати, раза в 2 сложнее, чем функция для декодирования, т. к. требует дополнительного выделения памяти).

expires

Необязательная пара expires=датазадает время жизни нашего Cookie. Точнее, Cookie самоуничтожится, как только наступит указанная дата. Например, если задать expires=Friday,31-Dec-99 23:59:59 GMT, то "печенье" будет "жить" только до 31 декабря 1999 года. Кстати, вот вам и вторая неприятность: хорошо, если мы знаем наверняка время "смерти" Cookie. А если нам нужно его вычислять на основе текущего времени (например, если мы хотим, чтобы Cookie существовал 10 дней после его установки, как в подавляющем большинстве случаев и происходит). Придется использовать функцию, которая формировала бы календарную дату в указанном выше формате. Кстати, если этот параметр не указан, то временем жизни будет считаться вся текущая сессия работы браузера, до того момента, как пользователь его закроет.

domain

Параметр domain=имя_хостазадает имя хоста, с которого установили Cookie. Ранее я уже говорил про этот параметр. Так вот, оказывается, его можно менять вручную, прописав здесь нужный адрес, и таким образом "подарить" Cookie другому хосту. Только в том случае, если параметр не задан, имя хоста определяется браузером автоматически.

path

Параметр path=путьобычно описывает каталог (точнее, URI), в котором расположен сценарий, установивший Cookie. Как мы видим, этот параметр также можно установить вручную, записав в него не только каталог, а вообще все, что угодно. Однако при этом следует помнить: указав хост, отличный от хоста сценария, или путь, отличный от URI каталога (или родительского каталога) сценария, мы тем самым никогда больше не увидим наш Cookie в этом сценарии.

secure

Этот параметр связан с защищенным протоколом передачи HTTPS, который в книге не рассматривается. Если вы не собираетесь писать сценарии для проведения банковских операций с кредитными карточками (или иные, требующие повышенной безопасности), вряд ли стоит обращать на него внимание.

После запуска сценария, выводящего соответствующий заголовок (или тэг <meta>), у пользователя появится Cookie с именем nameи значением value. Еще раз напоминаю: значения всех параметров Cookie должны быть URL-кодированы, в противном случае возможны неожиданности.
К началу статьи





Добавил: LedWormДата публикации: 2006-01-19 20:32:32
Рейтинг статьи:5.00 [Голосов 1]Кол-во просмотров: 21747

Комментарии читателей

Всего комментариев: 2872

2018-01-19 11:46:12
sipsystemtiz
О контрацептивах...
онлайн-общение с мудаками - http://bit.ly/2EQfSxP#qUy15FuY0p
не попадитесь

были проплачены услуги за регистрацию 2300р и +15 евро на баланс

на последующий день обнаружилось, что объявленные на их же онлайн-ресурсах сервисы по факту не предоставляют
на просьбу отдать обратно деньги только .... мозг и ничего не вернули.

спустя кое-какое время невозможно войти в акк и техподдержка на просьбу решить вопрос попросту игнорит

дай бог, если вы (техподдержка) это читаете, благословение на весь ваш кидальный бизнес, на все последующие годы-
чтоб вас также по жизни во всем все швыряли и люди знали какие вы непорядочные свиньи
чтоб поскорей загнулся ваш род и ваши кидальные сайты. дешевки.

переписка прилагается - http://bit.ly/2EQfSxP#kQgq42vsSs

контакты мошенников
ICQ: 222-443 222443
Skype: www.sip-system.com
E-Mail: support@sip-system.com
Телефон, Telegram, Viber, WhatsApp: +79854165502
http://sipfake.ru/
support@sipfake.ru
1. http://podmenanomera.ru
2. http://sip-system.com
3. http://sipfake.ru
4. http://fakenumbers.net
5. http://nat-bank.ru
6. http://sip-system.net
7. http://vk.com/callerid
8. http://sip-ring.com/
----------------------
еще инфа по кидалам - https://forum.exploit.in/index.php?showtopic=67860
---------------------
мегафон смс с подменой номера
смс из интернета с подменой номера
принять смс с подменой номера
бесплатный сервис смс с подменой номера
смс рассылка с подменой номера

2017-12-16 12:42:55
AvitoR77Kl
[b]Пополение баланса Авито (Avito) за 50%[/b] | [b]Телеграмм @a556677[/b] Старый Телеграмм @a1garant НЕДЕЙСТВИТЕЛЕН

[b]Здравствуйте, дорогие друзья![/b]

Рады предоставить Всем вам услуги по пополнению баланса на действующие активные аккаунты Avito (а также, абсолютно новые). Если Вам надо конкретные балансы - пишите, будем решать. Потратить можно на турбо продажи, любые платные услуги Авито (Avito).

[b]Аккаунты не Брут. Живут долго.[/b]

Процент пополнения в нашу сторону и стоимость готовых аккаунтов: [b]50% от баланса на аккаунте.[/b]
Если требуется залив на ваш аккаунт, в этом случае требуются логин и пароль Вашего акка для доступа к форме оплаты, пополнения баланса.
Для постоянных заказчиков гибкая система бонусов и скидок!

[b]Гарантия: [/b]

[b]И, конечно же ничто не укрепляет доверие, как - Постоплата!!![/b] Вперед денег не просим...

Рады сотрудничеству!

[b]Заливы на балансы Авито[/b]
________

подтвержденные аккаунты авито
как зарегистрироваться на авито если аккаунт заблокирован
не могу подать объявление на авито номер подтвержден в аккаунте
аппарат для пересчета денег авито
аккаунты авито база

2017-12-13 10:26:01
PeterDer
В известный во всём мире праздник «День Святого Валентина» влюблённые обмениваются фигурными открытками в виде сердечка, дарят друг другу конфеты, игрушки или другие подарки, которые подчеркивают символичность их любви и верности…, подробнее читайте на сайте <a href=http://fi-hi.ru>fi-hi.ru</a>

2017-12-03 18:04:58
LobbertiRiz
Установка цветного видеодомофона с камерой в квартиру.Системы видеонаблюдения для квартир установка магнитного замка в офис от 13000 тысяч рублей. установка дверного доводчика от 35000 рублей

[url=http://video-stb.ru]кодовый замок на дверь электронный[/url]
[url=https://www.video-stb.ru/catalog/magnitnye-zamki/]поставить магнитный замок на дверь[/url]

<a href=https://www.video-stb.ru/catalog/ustanovka-domofonov/>аудио домофон</a>

[url=https://www.video-stb.ru/catalog/ustanovka-dvernykh-zamkov/]ремонт врезных замков[/url]

[url=https://www.video-stb.ru/catalog/kodovye-zamki/]кодовый замок на дверь электронный[/url]

2017-12-02 15:07:29
Davidmox
Дневники людей, проходящих противовирусную терапию. Сообщаем о ходе терапии, обсуждаем побочки, задаём вопросы прошедшим через всё это, делимся своим опытом

<a href=https://hcv-forum.ru/>ледипасвир цена</a>
<a href=https://hcv-forum.ru/>гепцинат лп украина</a>

[url=https://hcv-forum.ru/]hepcinat lp москва[/url]
[url=https://hcv-forum.ru/]софосбувир инструкция по применению цена[/url]

2017-11-26 13:30:22
Larryanalm
В первую очередь укладывается металлическая сетка, к которой будет прикреплен нагревательный элемент. Перед заливкой стяжки, необходимо четко спланировать положение кабеля и его муфт, выходов под подключение электросети, регулятор и термостат, подробнее читайте на сайте <a href=http://remstroitelstvo.ru>remstroitelstvo.ru</a>

2017-11-23 11:39:56
GeorgeDow
Как туплекс, так и пробка обладают прекрасными параметрами, поэтому многие люди затрудняются с правильным выбором. Пробка является экологически чистой, однако опасается воздействия воды, подробнее читайте на сайте <a href=http://rempostroy.ru>rempostroy.ru</a>

2017-11-21 14:24:54
HarryyRIx
Ревлимид (Леналидомид) дженерик lenmid 5 Cтоимость, цена, купить, отзывы, отзывы пациентов

[url=http://india-med.net/anticancer]Стивагра (Stivarga) - Регорафениб (Regorafenib) инструкция[/url]

<a href=http://india-med.net/lucius-pharmaceuticals-onko>LuciSun - дженерик Сутент (Sutent ) - Sunitinib (Сунитиниб) Купить, стоимость, цена, отзывы пациентов</a>

<a href=http://india-med.net>daclahep купить</a>

[url=http://india-med.net]ледипасвир цена казахстане[/url]

2017-11-21 07:38:50
DonaldPrilm
Каркасная конструкция имеет негативное свойство выводить тепло накопившееся внутри помещения на улицу. Чтоб избежать подобных теплопотерь, или значительно уменьшить их показатели, рекомендуется подобрать подходящий утеплитель для каркасного дома, подробнее читайте на сайте <a href=http://omontazhe.ru>omontazhe.ru</a>

2017-11-21 05:03:09
Robertcok
Практически все замужние женщины имеют тайное желание – проверить своего мужчину на верность. Ревность – та черта, которая всегда имеет место в отношениях между супругами. Очень часто она возникает на определённой почве. Подробнее читайте на сайте <a href=http://s-narodom.ru>s-narodom.ru</a>
Ваше имя: *
Текст записи: *
Имя:

Пароль:



Регистрация

Как вы относитесь к интернет-магазинам?
Не доверяю
18% (16)
Ни разу не пользовался и не буду
16% (15)
Пользовался единожды
12% (11)
Пользуюсь регулярно
26% (24)
Пользовался бы, но нет денег
18% (16)
А что такие бывают?
2% (2)
Обычные магазины лучше!
8% (7)

Проголосовало: 91
Звонок в Microsoft: - Здраствуйте, три года назад я установила Windows 95. За все время работы не было ни одного сбоя. Подскажите, что я неправильно делаю...
Рейтинг: 7/10 (1)
Посмотреть все анекдоты