Работа с cookies
Проблема
Вы хотите получить или создать cookie для хранения параметров сеанса или настроек пользователя.
Решение
В модуле CGI.pm получение существующей cookie выполняется так:
$preference_value = cookie( "preference name");
Cookie создаются следующим образом:
$packed_cookie = cookie( -NAME => "preference name",
-VALUE => "whatever you'd like",
-EXPIRES => "+2y");
Чтобы сохранить cookie в клиентском броузере, необходимо включить ее в заголовок
HTTP (вероятно, с помощью функций header или redirect):
print header(-COOKIE => $packed_cookie);
Комментарий
Cookies используются для хранения информации о клиентском броузере. Если вы работаете
с Netscape в UNIX, просмотрите файл -/.netscape/cookies, хотя в нем содержатся не все
cookies, а лишь те, которые присутствовали на момент последнего выхода из броузера.
Cookies можно рассматривать как пользовательские настройки уровня приложения или как
средство упростить обмен данными. Преимущества cookies заключаются в том, что они могут
совместно использоваться несколькими разными программами и даже сохраняются между вызовами броузера.
Однако cookies также применяются и для сомнительных штучек типа анализа трафика.
Нервные пользователи начинают гадать, кто и зачем собирает их личные данные. Кроме
того, cookies привязаны к одному компьютеру. Если вы работаете с броузером у себя
дома или в другом офисе, в нем не будет cookies из броузера, находящегося у вас на
работе. По этой причине не следует ожидать, что каждый броузер примет cookies,
которые вы ему даете. А если этого покажется недостаточно, броузеры могут уничтожать
cookies по своему усмотрению.
Cookies ненадежны, поэтому на них не стоит чрезмерно полагаться. Используйте их
для простых транзакций с конкретным состоянием. Избегайте анализа трафика, это может
быть принято за вмешательство в личные дела пользователей.
См. также
Proverte kod v komentariyah gde pro list tam oshibki detskie
Оставить комментарий:
|
|