ПредишенСледващото

Да предположим, че искате да се даде възможност на потребителя да разглеждате каталог на вашите продукти и да изберете от него стоките са поставени на различни страници. Но "по отношение на" сървър, изборът на стоки на същата страница, по никакъв начин не е свързано с евентуални предишни или последващи действия с един и същи потребител. Как да се вземе предвид избраното от потребителя позиция?

Може ли да реши този проблем с помощта на специално приложение на уеб-сървър, който трябва да следва действията на потребителя. Тази идея е въплътена в идентифицирането на признаци на технологиите, или - в Netscape терминология - "кифли" (бисквити). "Bun", изготвен от компанията, вече са се превърнали в де факто стандарт. Но преди да погледнем по-отблизо с опознавателните знаци, нека да погледнем по-отблизо в същността на проблема.

Връзката на клиент и сървър софтуер в интернет са доста проста. Браузърът има достъп до сървъра с молба: ". Покажи ми такъв документ" Ако не съществува документ, а потребителят има достъп до него, сървърът изпълнява заявката. Тук, по принцип, и всички. Най-отгоре (без данни) натоварването на мрежата е много малък, а скоростта - висока. Въпреки това, има един недостатък: връзката между браузъра и сървъра се поддържа само в момента на сделката, всеки от които няма нищо общо с другото. Операции от този тип са обозначени с термина idempotent (който може да бъде преведен като "равно"), и сървъра не се счита като всяко конкретно състояние (без гражданство). В действителност, неудобството възниква само когато е необходимо, за да следите преминаването на комуникационна сесия, т.е.. Д. Последователността на определен потребител заявки към уеб-сървър.

Преди имаше идентифициране функции, единственият начин за проследяване на действията на потребителите, уеб-сървър е да се използват доста ограничен капацитет "невидим поле" в HTML-форми или организацията на специален процес на обработка на "жетони", вградени в локатори на ресурси (URL). Както можете да си представите, тези методи са неудобни и не много надежден.

Що за "кифли"?

Netscape е предложил решението си и го включи в Navigator 0.94, наричайки новост "постоянни бисквитки" (което буквално означава нещо като "постоянни кифли." - Забележка платно ..). Вместо непрекъснато предаване на данни от браузъра към сървъра и обратно да се запази същото непрекъсната мрежа сесия, реши Нетскейп, трябва да се предостави на уеб-сървър, за да бъдат поставени в браузъра на файловата система, а след това прочете малко количество собствена информация ( "кок"). Данните, съхранявани в "кифла", или признаци, може, например, да се идентифицират потребителската сесия (което се наблюдава при липса на информация за своите потребители да осъществяват), или каквито и да било други параметри като желани, администраторът на уеб сървър.

За да направи процеса на писане и четене етикет статус "прозрачен" за потребителя, Netscape разработен разширение на протокола HTTP, който е неразделна част от World Wide Web. Най-общо казано, HTTP протокол е достатъчно проста. Когато браузърът има достъп до сървъра с искането, тя изпраща исканите данни в отговор на поставен отпред етикет се състои от набор от услуга маркер. Ако сървърът е насочена към установяване на "кифла" в клиентския софтуер, етикетирането на етикета е включена "бисквитка" (повече за това описва страничната лента).

идентификационни признаци за съхранение

Netscape спецификация браузър компания позволява да съхранявате до 300 функции, всяка от които може да бъде до 4 килобайта. Има и ограничение от 20 характеристики на всеки сървър или домейн. Спецификацията показва, че сървърът "не трябва да разчита на възможността за превишаване на лимита. Ако това се случи, клиентът трябва да изтриете старите знаци."

В Netscape Navigator браузър с характеристиките на един файл (cookies.txt) се съхранява в една от поддиректориите. Форматът на този файл е патентована, а ако не искат да развалят информацията, съдържаща се в него, а след това не се опитвайте да го (защита на файла не е предоставена) редактирате. Различните браузъри и операционни системи магазин знаци в свой собствен начин. Така например, в програмата Navigator за Macintosh, те се записват в папка Navigator и Internet Explorer - в поддиректория под формата на макроси.

идентификационен процес

Възниква въпросът: защо сървърът може да изисква идентифициране характеристики? Схематично, работата с "кифлички" е както следва. Например, за да се организира на дисплея на страниците на уеб-сървър, според предпочитанията на потребителя, сървърът поставя съответната информация за браузъра, под формата на знаци. Всеки път, когато отворите браузъра към сървъра чете данни от последните "кифлички" и показва желаната страница на потребителя.

Но в действителност, сървърът не чете информацията. Само на браузъра, като се позовава на ресурсите на сървъра, в определена област, особено погледнете в досието му с опознавателните знаци на сегашния "кифла" (т. Е., Тези, за които периодът не е изтекъл срок на годност) за този ресурс, или на съответния сървър. Ако такива признаци за сървъра след това се поставя на върха на искането за сваляне на маркировка етикет HTTP_COOKIE, името и датата на функцията за запис. Прилагане на уеб-сървър автоматично прочита тази информация с помощта на CGI-интерфейс.

Стандартизиране на "кифли"

Днес, идентифициране на характеристиките или "кок" е стандартът, де факто, но е близо денят, когато те ще станат тяхна де юре. Сега работна група Internet Engineering (IETF) е проект на стандарт за "кок", която има много сериозно име "Механизъм HTTP членка мениджмънт" (за подробности виж. Portal.research.belllabs.com/et).

Когато се говори за тази технология неминуемо повдига друг въпрос: защо Netscape нарича идентификационни знаци "кифли"? Въпреки, че с тяхна помощ можем да се хвърли светлина върху това как потребителите работят на сървъра, на името на една мистерия, вероятно завинаги остава загадка. Netscape служители казват "нищо специално скривалище" зад него. Такъв е светът на съвременната компютърна техника!

Рецептата за "кифли"

Маркировка "Set-Cookie" е както следва:

Set-Бисквитеното: NAME = стойност; изтича = DATE; пътека = PATH; домейн = DOMAIN_NAME; сигурен

ИМЕ и СТОЙНОСТ - всички низови променливи, в които има идентификация на потребителя. Променливи не трябва да съдържат точка и запетая, запетаи или интервали. Двойка NAME = стойност е само задължително елемент на маркировката.

ДАТА променлива посочва датата, след която знакът трябва да бъде изтрита автоматично. Ако не е посочен срок, а след това на етикета ще съществуват само до края на текущата сесия на браузъра Navigator.

Етикетът описва името на домейн DOMAIN_NAME, към които тази функция. Ако не е посочен този етикет, стойността по подразбиране е името на сървъра, който е създаден на функцията за маркиране.

Етикетът "сигурно", показва, че предаване характеристика сървър може да се извършва само в шифрован вид.

Трябва да се има предвид, че може да се под етикета "издава" няколко признаци, но в този случай те трябва да се отнасят до различни ресурси (URL) и имат различни начини. В противен случай, последната от еднакви знаци ще бъдат инсталирани на клиентската машина.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!