ASP中Cookies集合使用方法详解(3)
作者:CODEOF 时间:2007-09-14 10:16:00
ASP中的cookie的使用
在这一节我们将学习那些提供给ASP代码使用的集合、方法和属性的各种技术。
1) cookie中存储用户的细节情况
可以使用cookie来存储这两类值:当浏览器关闭时我们不想保存的值(例如用户的注册信息)以及在用户访问站点时要保留的值。在每种情况下cookie的值对于来自用户浏览器的每个页面请求的ASP都是可用的。
然而,需要记住的是,cookie只有在对Cookie中的虚拟路径(path)内的页面发出请求时,才会发往服务器。缺省时,假如path的值在cookie中没有设置,则其值为创建cookie的页面的虚拟路径。为使一个cookie发往一个站点的所有页面,需要使用path=“/”。
这里是个实例,从自定义的Login页面中,将用户的注册信息存贮在一个cookie中,由于没有应用有效期,cookie值仅在关闭这个浏览器这前保留:
...
Request.Cookies(“User”)(“UID”) = “<% = Request(“UserName”) %>”
Request.Cookies(“User”)(“PWD”) = “<% = Request(“Password”) %>”
Request.Cookies(“User”).Path = “/adminstuff” ‘Only applies to admin pages
...
现在,在用户从adminstuff目录或其子目录请求的每个页面中,都可以找到这个cookie。假如它不存在,可以将用户重定向到注册页面:
If (Request.Cookies(“User”)(“UID”) <> “alexhomer”) _
Or (Request.Cookies(“User”)(“PWD”) <> “secret”) Then
Response.Redirect “login.asp?UserName=” & Request.Cookies(“User”)(“UID”)
End If
...
由于把cookie中的用户名放在Response.Redirect的URL查询字符串中,假如在口令输入时出现错误且希望用户不必重新键入用户名,可以在login.asp页面中使用它:
<FORM ACTION=”check_user.asp” METHOD=”POST”>
<INPUT TYPE=”TEXT” NAME=”UserName”
VALUE=”<% = Request.QueryString(“UserName”) %>”><P>
<INPUT TYPE=”SUBMIT” VALUE=”LOGIN”>
</FORM>
2) 修改现有的cookie
可以使用ASP修改现有的cookie,但不能只修改cookie中的一个值。当更新一个在Response.Cookies集合中的Cookie时,现有的值将丢失。我们可以用如下代码创建一个cookie,可以使用:
Response.Cookies(“VisitCount”)(“StartDate”) = dtmStart
Response.Cookies(“VisitCount”)(“LastDate”) = Now
Response.Cookies(“VisitCount”)(“Visits”) = CStr(intVisits)
Response.Cookies(“VisitCount”).Path = “/” ‘Apply to entire site
Response.Cookies(“VisitCount”).Expires = DateAdd(“m”,3,Now)
假如想要更新Visits和LastDate的值,必须先不需改变的所有值,然后重写整个的cookie:
datDtart = Response.Cookies(“VisitCount”)(“StartDate”)
intVisits = Response.Cookies(“VisitCount”)(“Visits”)
Response.Cookies(“VisitCount”)(“StartDate”) = dtmStart
Response.Cookies(“VisitCount”)(“LastDate”) = Now
Response.Cookies(“VisitCount”)(“Visits”) = Cstr(intVisits)
Response.Cookies(“VisitCount”).Path = “/”
Response.Cookies(“VisitCount”).Expires = DateADD(“m”,3,Now + 1)
且对于几乎所有的其他Response方法和属性,应该在写入任何内容(即打开<HTML>标记或任何文本或其他的HTML)到响应之前完成这个工作。
标签:cookies,asp
0
投稿
猜你喜欢
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
2021-07-03 18:21:00
详解Python执行py文件是否需要可执行权限
2021-01-19 10:52:53
wxPython色环电阻计算器
2023-12-21 20:08:54
pytest之assert断言的具体使用
2021-11-21 18:04:26
Python进行文件处理的示例详解
2021-12-08 10:51:04
Mysql按条件计数多种实现方法详解
2024-01-18 09:43:35
Pyqt QImage 与 np array 转换方法
2022-01-03 01:18:53
MySQL中一条update语句是如何执行的
2024-01-16 23:57:43
spark: RDD与DataFrame之间的相互转换方法
2023-06-09 23:24:04
C#中实现查找mysql的安装路径
2024-01-24 05:48:15
谈谈Python进行验证码识别的一些想法
2022-09-19 12:50:53
使用tensorflow进行音乐类型的分类
2021-02-22 16:58:31
对python中执行DOS命令的3种方法总结
2021-10-11 12:22:53
Laravel操作session和cookie的教程详解
2023-06-01 21:28:50
浅谈PHP的数据库接口和技术
2024-05-02 17:13:49
Python Web App开发Dockerfiles编写示例
2023-02-01 12:47:19
js返回顶部代码
2011-04-25 19:21:00
深入理解Pytorch中的torch. matmul()
2023-06-03 05:29:18
将表数据生成SQL脚本的存储过程和工具
2009-01-08 15:24:00
Python输出由1,2,3,4组成的互不相同且无重复的三位数
2021-07-26 10:54:42