一、Cooies集合是Response对象和Request对象共有的一项经常用到的集合。用户通过HTTP标头访问一个主页时,每次都要重新开始。因此,如果要判断某个用户是否曾经进入本网站,那么就可以使用Cookies了。当用户第一次访问此网站时,可以利用Response对象的Cookies集合将数据存储到客户端计算机,当用户再一次访问此网站时,则可以利用Request对象的Cookies集合取得相关信息。
Cookies存放在浏览器端的本机磁盘上,而不是存放在服务器端。通常,Cookies包含用户的有关信息(如身份识别号码,密码、用户在Web站点上购物的方式或用户访问该站点的次数等)。无论何时用户连接到服务器,Web站点都可以访问Cookies信息。
注解:什么是HTTP标头?当客户端浏览器向服务器发送页面请求时,除了将所请求页面的URL地址传送给服务器之外,也将浏览器的类型、版本等信息一起传送到服务器,这些信息统称为请求标头;当服务器响应客户端浏览器的请求时,除了所请求的文件传递给客户端之外,也将该文件的大小、日期等信息一起传送给客户端,这些信息称为响应标头,请求标头和响应标头统称为HTTP标头。
二、利用Response对象的Cookies集合将数据存储到客户端的计算机上的语法格式如下:Response.Cookies(Cookies名)[(Key)]|.属性]=值
注解:Key 为可选参数,如指定Key ,则 Cookies 就是一个字典,该参数值将被设置为“值”。并可以在以后的接收中使用。 “索引值”用于检索多个变量值中的某一个; 属性是指Cookies的属性。 Cookies默认的生命周期起始于它被写入浏览器端的那一刻,结束于浏览器结束执行时。如果要设置Cookise的存在期限,可经使用Response.Cookies(name).Expries属性。当存在期限已满时,Cookies将自动从浏览器的本机磁盘上删除。 向客户端写入Cookie 值时应注意,由于Cookie 是作为 HTTP 传输的一部分发送给客户端的,所以设置 Cooie 的代码必须放在标记的前面。
三、下面是一段判断用户登录时,其用户名和密码是否输入正确的简单程序。
我在用户登录页面中创建了一个名为UserName的Cookies,通过UserName和password这两个Key值来保存用户名和用户密码。其代码如下: (文件名:4-2a1.asp)<%Response.Cookies("User")("UserName")="含笑" '创建一个名为"User"的Cookies中”UserName"的值。Response.Cookies("User")("password")="111111" '创建一个名为“User"的Cookies中”password"的值。Response.Cookies("UserName").Expires=date()+1Response.Cookies("password").Expires=date()+1%><html><head><title>用户个人资料</title></head><body><center><form name="Form1" method="get" action="4-2a.asp"><p>用户姓名:<input name="UserName1" type="text"><p>密码:<input name="password1" type="password"> <input Type="submit" name="btnSubmit" value="提交"> <input type="reset" name="reset" value="重写"></center></form></body></head>
通过Request对象的Cookies集合读取Cookies中的值,通过表单传递过来的用户名和密码与其进行比较,如都一样,则提示:”您已登录成功。“,否则返回登录页面。其代码如下: (文件名:4-2a2.asp)