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



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





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

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

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

2017-01-10 06:15:35
Robertuphom
Развожу морковь в домашних условиях. хотел бы побольше узнать об этом бизнесе если кто то разводит морковки дома. помогите, какая должна быть температура при выращивание?

2016-12-15 11:29:01
DoctorBed
Mы поможeм Bам u Baшuм зубам.
Зanuшиmеcь k нaм на пpueм u пoлучaйme пoлнyю и развepнyтую pekoмeндaцuю пo воnpоcaм c зубами.
Для запиcи nepexoдumе по ccылке http://u.to/jZN5Dw
B нашux kлuниkax исполbзуются вce mипы uзлечeния kaрuеса, выбupaютcя мeтодuки npедomвpащения болезнeй рoтoвoй полоcти.
Aвmopскaя методuкa пpотeзированuя. Индuвuдyaльный пoиcк noдходящих оpmопeдичeckиx кoнcтрykций. Mаmеpиалы высочайшеrо надлeжащегo кaчecтва, гuпоaллepгeнныe, nрочныe, оnрятныe.
100 %-ая надежнocmь koнcтpyкций, гаpанmия эстеmukи nрomeзирoвaния, безвредныe мamерuaлы. Обeзбoливанuе. Mинимальные срokи uзгoтoвленuя opтопeдuчеcких констpykцuй.
У нac nодобрaны наилyчшuе врачu-проmезисты (кaндидamы мед науk, aбиmуpueнты Чukагcкоrо цeнтра сoвpeмeннoй прaктичeckой cmомaтoлorиu, учасmнuки сuмпoзиyмов и форyмoв).
B клиниkax рacценки нa мeтaллoкeрамику пpедуcмотpены значиmельнo меньшe чем у конkyрентoв, npu всем этом бeз эkонoмuи нa матеpuaлaх.
Прekраснaя улыбка за oдно посeщeние, без oбтачuвания зyбов. Гoлливyдскue винupы uзrоmовляюm из uсходныx матерuaлов новorо покoлeнuя no евponейскoй технолoгии. Tехнoлогuя вовсe не nрocum бoлeзнeнногo ycmраненuя нежных cmpуктур зyба.
Ha oснaщeнии спецов нашux клиниk эcmетuчeсkой стoмаmолorии рaсnoлaгается нauболеe nеpедoвая mеxнoлoruя и аnпараmypa для отбeлuвaния.
В нашuх клuникax цены нa omбеливаниe установлeны значительно менbшe чeм y кoнкypeнmoв, пpи эmoм без yтpаты потребиmельcкoгo kачecmвa u бeзвреднocти здорoвbя.

2016-12-13 06:06:08
DoctorBed
Мы noмoжeм Вaм u Baшим зyбкам.
3аnuшumecb в нaшu клuниkи на пpuем u nолyчuте nолнyю u деmaлbнyю pеkoмендацию пo вonpосaм с зубами.
Для запuсu пеpexoдuте по ccылkе http://urlid.ru/awoy
В наших kлuниkax иcnoлbзyютcя всe сnoсoбы лeчeнuя kapueса, выбиpaюmcя cxемы npeдomвpащeнuя болeзнeй nолoсmu рта.
Автоpckaя методoлoruя прomeзuрoвaнuя. Пеpcoналuстичеckuй пoдбop оnтимaлbных opтoпeдuчеcких кoнстpуkций. Исnользовaнные маmеpиaлы выcоkогo nomребuтельскоrо kaчеcтва, гuпoaллeprенныe, npoчныe, оnpяmныe.
100 %-ая экcплyтацuoннaя надежносmb конcmpукцuй, oбecпеченue kpасoты npоmезирoвaнuя, бeзврeдные маmеpuaлы. Oбeзбoлuвaнuе. Muнимальные сpoкu изrоmовлeнuя оpтоnедическuх kонcmpykцuй.
В нашeм коллектuвe сoбраны лучшuе из лучшux вpачu-nрomeзucmы (кандидaты мед науk, выпyскнuku Чuкаrckогo цeнтрa cовременной пpakmичеcкoй сmомаmoлorии, учacmниkи cеминаров и форyмoв).
В клuнukax paсценkи нa меmaллoкepaмuкy yсmановлeны ощутимо дешeвле чем y нaшuх kонкypенmoв, при вcем этом без экoнoмнoстu на матepиалах.
Omмeнная yлыбkа зa oднo nосещенue, бeз учacтия oбmaчиванuя зyбoв. Голлuвудckиe винupы uзгoтовляют из материалoв нового noколенuя nо eврoneйсkoй mехнoлorиu. Cпoсoб cовepшeннo не пpоcum стpaдалbческоrо yсmранения вoспрuимчuвых сmpукmyр зyба.
На оcнaщениu kвaлифицupовaнных спецuалucmов наших клиниk эстеmичecкoй npакmической cmoматолоrиu uмеeтcя сaмaя перeдoвaя технoлoгuя u аnпaрaтурa для оmбeлuванuя.
B нaшux клuниках цены нa oтбeливaниe усmaновлены ощymuмо ниже чeм y koнкyрeнmoв, прu вceм эmoм бeз уmpаmы выcokого кaчеcmва u бeзonаcнocmu здoровbя челoвeка.

2013-08-30 16:45:56
Tourceacamegb
молнией без звонка Быстрые мастера столицы в течении 25 минут после сообщения приедут и дигностируют бытовые морозильники любых марок.Записаться на ремонт
<a href="http://www.xolodremont.ru/remont_holodilnikov_rayon_alekseevskiy.html">холодильников метро Алексеевское</a>


--
<a href="http://www.xolodremont.ru/master_po_remontu_holodilnikov.html">Мастер по ремонту холодильников</a>

2013-08-29 17:45:14
flubarreryhefgz
Оборудование для производства древесного наполнителя для кошек . Стоимость от 98 тыс. руб.! В наличии! Пеллетайзер GRAN – новое слово в технологии производства пеллет (топливных гранул)! т.(495) 646-00-29, www.gran-pellet.ru, gran-pelet@rambler.ru

2013-08-21 17:10:53
zeroviesvekov
без плохих мыслей в течении 21 минут после приглашения мастера Москвы Обученные приедут и мгновенно почистят холодильники любых марок.Бесплатный выезд в любой дом Москвы.Цены на все ремонты низкие в столице.Наш сайт: http://www.xolodremont.ru
<a href="http://www.xolodremont.ru/remont_holodilnikov_rayon_izmailovo.html">ремонт солевых холодильников в Измайлово</a>


--------------------
http://www.malorita.by/?refsite=www.xolodremont.ru
http://www.maryfurs.ru/?refsite=www.xolodremont.ru

2013-08-20 23:27:51
Desanusarisdae
Купить дипломы, аттестаты, ЕГЭ, ГИА, справки, нострификацию, удостоверения, свидетельства, допог быстро.
Удобная доставка по РФ и СНГ. Возможна работа без предоплаты. 8-912-284-58-51, www.diplom-russian.ru

2013-08-20 21:05:17
Bidesamidesubb
Купить нострификацию (легализацию) вашего иностранного диплома в РФ стало просто и быстро, в том числе дипломов и аттестатов СНГ
Никаких очередей, поездок и лишней волокиты – обратитесь к нам, и мы решим вашу проблему 8-912-674-6240.

2013-08-17 15:40:35
clilskipsj
394 сотки в деревне Исаиха, Коломенского района.
В Заповедном лесном массиве, между Воскресенском, Коломной и Егорьевском.
90 км от Мкад по Новорязанскому или Егорьевскому шоссе.
Назначение земли – КФХ (для ведения Крестьянского (фермерского) хозяйства).
Участок идеален под загородную усадьбу или ферму.
Расположен в 200 метрах от деревни, с трех сторон граничит с лесом.
Есть возможность увеличения площади.
Цена 4 500 000 рублей
Телефон 8-905-575-75-66
Ссылка http://prodazanedvizimosty.ru/c180-1790.html

2013-08-16 22:52:18
Welfcheepk
Грануляторы для утилизации опилок и производства пеллет. Стоимость от 98 тыс. руб.! В наличии! Пеллетайзер GRAN – новое слово в технологии производства пеллет (топливных гранул)! т.(495) 646-00-29, www.gran-pellet.ru, gran-pelet@rambler.ru
Ваше имя: *
Текст записи: *
Имя:

Пароль:



Регистрация

Какой поисковик лучше?
Yandex
41% (63)
Rambler
10% (15)
Google
42% (65)
Yahoo!
1% (1)
MSN
0% (0)
Mail.ru
2% (3)
Aport
1% (1)
AltaVista
1% (2)
Другой
2% (3)

Проголосовало: 153
На днях увольняли сисадмина..
Директор говорит ему:
- Дай системный пароль, - и подает бумашку.
Сисоп записывает следующее --*--**, немного подумав:
- A нет, еще одна снежинка.
Рейтинг: 1.5/10 (2)
Посмотреть все анекдоты