ASP Cookies 集合

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

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

语法:

  1. Response.Cookies(name)[(key)|.attribute]=value
  2.  
  3. 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 的值:

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

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

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

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

现在,名为 "firstname" 的 cookie 的值是 "Alex",同时它在用户电脑中的失效日期是 2002 年 5 月 10 日。

"Request.Cookies" 命令用于取回 cookie 的值。

在下面的例子中,我们取回了 cookie "firstname" 的值,并把它显示到页面上:

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

输出:

Firstname=Alex

一个 cookie 可以包含一个多值的集合。我们称之为 cookie 拥有 key 。

在下面的例子中,我们要创建一个名为 "user" 的 cookie 集合。"user" cookie 拥有包含有关用户信息的 key 。

  1. <%
  2. Response.Cookies("user")("firstname")="John"
  3. Response.Cookies("user")("lastname")="Adams"
  4. Response.Cookies("user")("country")="UK"
  5. Response.Cookies("user")("age")="25"
  6. %>

下面的代码可读出所有服务器已向用户发送的 cookie 。请注意,我们使用了 HasKeys 属性来判断 cookie 是否拥有 key :

  1. <html>
  2. <body>
  3.  
  4. <%
  5. dim x,y
  6.  
  7. for each x in Request.Cookies
  8. response.write("<p>")
  9. if Request.Cookies(x).HasKeys then
  10. for each y in Request.Cookies(x)
  11. response.write(x & ":" & y & "=" & Request.Cookies(x)(y))
  12. response.write("<br /")
  13. next
  14. else
  15. Response.Write(x & "=" & Request.Cookies(x) & "<br />")
  16. end if
  17. response.write "</p>"
  18. next
  19. %>
  20.  
  21. </body>
  22. </html>
  23. %>

输出:

  1. firstname=Alex
  2. user:firstname=John
  3. user:lastname=Adams
  4. user:
  5. country=UK
  6. user:
  7. age=25