ASP Cookies 集合

Manuale di riferimento dell'oggetto Request

Cookies 集合用于设置或取得 cookie 的值。如果 cookie 不存,就创建它,并赋予它规定的值。

注释:Response.Cookies 命令必须位于 <html> 标签之前。

语法:

Response.Cookies(name)[(key)|.attribute]=value
variablename=Request.Cookies(name)[(key)|.attribute]
参数 描述
name 必需。cookie 的名称。
value 必需(对于 Response.Cookies 命令)。cookie 的值。
attribute

可选。规定有关 cookie 的信息。可以是下面的参数之一。

  • Domain - 只写;cookie 仅送往到达该域的请求。
  • Expires - 只写;cookie 的失效日期。如果没有规定日期,cookie 会在 session 结束时失效。
  • HasKeys - 只读;规定 cookie 是否拥有 key(这是唯一一个可与 Request.Cookies 命令使用的属性)
  • Path - 只写;如果设置,cookie 仅送往到达此路径的请求。如果没有设置,则使用应用程序的路径。
  • Secure - 只写;指示 cookie 是否安全。
key 可选。规定在何处赋值的 key。

实例

"Response.Cookies" 命令用于创建 cookie 或者设置 cookie 的值:

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

在上面的代码中,我们创建了一个名为 "firstname" 的 cookie,并为它赋值 alex 。

也可以为 cookie 设置属性,比如设置 cookie 的失效时间:

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

Ora, il valore del cookie denominato "firstname" è "Alex", e la sua data di scadenza sul computer dell'utente è il 10 maggio 2002.

"Request.Cookies" è utilizzato per recuperare i valori dei cookie.

Nell'esempio seguente, recuperiamo il valore del cookie "firstname" e lo mostriamo sulla pagina:

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

Output:

Firstname=Alex

Un cookie può contenere una raccolta di valori. Si dice che il cookie possiede una key.

Nell'esempio seguente, creiamo una raccolta di cookie denominata "user". Il cookie "user" contiene key che contengono informazioni sull'utente.

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

Il seguente codice legge tutti i cookie inviati dal server all'utente. Si prega di notare che abbiamo utilizzato l'attributo HasKeys per determinare se il cookie possiede una key:

<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 />")
  fine if
  response.write "</p>"
next
%>
</body>
</html>
%>

Output:

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

Manuale di riferimento dell'oggetto Request