Коллекция ASP Cookies

Референсное руководство по объекту Request

Коллекция Cookies используется для установки или получения значения cookie. Если cookie не существует, он создается и ему присваивается указанное значение.

Комментарий:Команда Response.Cookies должна быть расположена до тега <html>.

Синтаксис:

Response.Cookies(name)[(key)|.attribute]=value
variablename=Request.Cookies(name)[(key)|.attribute]
Параметры Описание
имя Обязателен. Имя cookie.
значение Обязателен (для команды Response.Cookies). Значение cookie.
атрибут

Опционально. Определяет информацию о cookie. Может быть одним из следующих параметров.

  • Domain - только для записи; cookie отправляется только на запросы, достигшие этого домена.
  • Expires - только для записи; дата истечения срока действия cookie. Если дата не установлена, cookie будет失效 в конце сессии.
  • HasKeys - только для чтения; определяет, имеет ли cookie ключ (это единственный атрибут, который можно использовать с командой Request.Cookies).
  • Path - только для записи; если установлено, cookie отправляется только на запросы, достигшие этой папки. Если не установлено, используется путь приложения.
  • Secure - только для записи; указывает, является ли cookie безопасным.
ключ Опционально. Определяет ключ, в котором устанавливается значение.

Пример

"Response.Cookies" команда используется для создания cookie или установки значения cookie:

<%
Response.Cookies("firstname")="Alex"
%>

В приведенном выше коде мы создали cookie с именем "firstname" и присвоили ему значение "alex".

Также можно устанавливать атрибуты cookie, например, устанавливать время истечения срока действия cookie:

<%
Response.Cookies("firstname")="Alex" 
Response.Cookies("firstname").Expires=#May 10,2002#
%>

Теперь значение cookie с именем "firstname" равно "Alex", и его срок действия истекает 10 мая 2002 года.

"Request.Cookies" команда используется для получения значения cookie.

В следующем примере мы возвращаем значение cookie "firstname" и отображаем его на странице:

<%
fname=Request.Cookies("firstname")
response.write("Firstname=" & fname)
%>

Вывод:

Firstname=Alex

Cookie может содержать множество значений. Мы называем это cookie с ключом.

В следующем примере мы создаем коллекцию cookie под названием "user". Cookie "user" содержит ключи, содержащие информацию о пользователе.

<%
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Adams"
Response.Cookies("user")("country")="UK"
Response.Cookies("user")("age")="25"
%>

Ниже приведен код, который может извлечь все cookie, отправленные сервером пользователю. Обратите внимание, что мы используем атрибут HasKeys, чтобы определить, имеет ли cookie ключ:

<html>
<body>
<%
dim x,y
for each x in Request.Cookies
  response.write("<p>")
  if Request.Cookies(x).HasKeys then
    for each y in Request.Cookies(x)
      response.write(x & ":" & y & "=" & Request.Cookies(x)(y))
      response.write("<br /")
    next
  else
    Response.Write(x & "=" & Request.Cookies(x) & "<br />")
  end if
  response.write "</p>"
next
%>
</body>
</html>
%>

Вывод:

firstname=Alex
user:firstname=John
user:lastname=Adams
user:
country=UK
user:
age=25

Референсное руководство по объекту Request