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



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





Установка 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]Кол-во просмотров: 22098

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

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

2018-06-18 12:04:40
Gepatit_haw
ледипасвир и софосбувир цена и где купить в москве

https://vk.com/sofosbuvir_i_daklatasvir

2018-06-12 19:22:53
gepatitu-c.net
Побочный эффект после лечения гепатита с


http://gepatitu-c.net/page/pobochnij-effekt-posle-lecheniya-gepatita-s/

.

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]
Ваше имя: *
Текст записи: *
Имя:

Пароль:



Регистрация

Какая OS удобнее, на ваш взгляд?
MS Windows / Vista
66% (194)
Linux
19% (57)
SunOS
1% (3)
QNX
1% (2)
BSD
4% (12)
MacOS
3% (8)
BeOS
1% (3)
Unix
1% (2)
Другая
4% (13)

Проголосовало: 294
Посетитель у провайдера.
- Ой, что это у вас так крякнуло.
- Сервер наверное...
Рейтинг: 7/10 (3)
Посмотреть все анекдоты