我们将制作一个能够记住访问者姓名的页面,在这个小案例中,你将学会如何使用request对象的cookies、form以及servervariables集合的值,还可以学习到如何使用response对象来发送cookies。
首先来看看程序代码:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%><!doctype html><html><head><meta charset="utf-8"><title>用Cookies记住访问者的姓名</title></head><body><%Dim sUserName
sUserName = Trim(Request.Cookies("name"))'判断name是否为空,不为空则输出name的值If sUserName = "" Then
'判断是否是POST刚提交了表单,是的话则获取表单内容输出Cookies
If UCase(Trim(Request.ServerVariables("REQUEST_METHOD"))) = "POST" Then
sUserName = Trim(Request.Form("name"))
Response.Cookies("name") = sUserName
Response.Cookies("name").Expires = DateAdd("d", 1, Now) 'Cookies一天后过期 Response.Write("我已经记住您的姓名了!") Else
'否则显示表单,让用户提交表单%>
<form method="post" action="">
请告诉我您的姓名 : <input name="name" type="text"/>
<input type="submit" value="提交" />
</form><%
End If Else
Response.Write("您好," & sUserName)End If%></body></html>首次运行,无法获取 Cookies 信息,显示表单,让用户提交,如下图:

提交表单,还是POST到当前ASP页面,因为还是无法获取Cookies,所以显示提交表单成功的页面,如下图:

再次刷新当前页面 RequestCookies.asp ,因为可以获取到Cookies,直接显示访问者姓名了。

我们再详细讲解下让用户输入姓名并保存的部分,首先获取ServerVariables变量REQUEST_METHOD的值,这个值标识了当前页面的请求方式,如果是POST方式,说明现在正在想此页面提交表单,这时就要获取表单的值,并且将其使用Response.Cookies集合来向客户端输出Cookies,否则显示供用户填写姓名的HTML代码。
【相关推荐】
1. 总结Asp.net内置对象之Request对象使用实例
2. 谈谈Request和Response这两个对象的使用
3. 分享asp中request对象五个获取客户端资料的方法
4. 详解ASP.NET 系统对象之Request
