Request.Cookies使用方法分析
本文章介绍了Request.Cookies的基本的语法和使用方法。
而且通过演示样例分析了Request.Cookies的使用过程。
Request.Cookies方法能够检索Cookies 集合中的值,Cookies 集合同意用户检索在 HTTP 请求中发送的 cookie 的值。
Request.Cookies使用语法:Request.Cookies(cookie)[(key)|.attribute]
Cookies是一种标记,由WEBserver嵌入到用户浏览器中,以便识别用户,下次同一浏览器请求网页时,将发送从WEBserver收到的Cookies。
利用Cookies可存储与用户相关的信息。
利用Response和Request对象的Cookies集合。可实现设置或获得Cookies的值。
利用Response对象的Cookies集合,设置Cookies的使用方法为:
Response.Cookies(CookieName)[(Key)|.Attribute]=value
參数说明:
(1)CookieName:代表表示Cookie的名字,由用户自行命名。
(2)Key:是Cookie指定keyword。通过给Cookie指定keyword,可使Cookie拥有多个值。这样的Cookie称为带索引的Cookie。
(3)Attribute:此參数表示Cookies集合对象的属性,其最经常使用的属性主要是Expires(用于设置Cookies的过期日期)、Domain(用于设置Cookies的有效作用域名范围)。
比方:若要设置一个名为VisitNum的Cookie,用以储存该用户訪问本站点的次数。并初始化其值为1,则实现代码为:
<%Response.Cookies("VisitNum")=1%>
该语句必须位于网页的<HTML>标记之前。
若指定的Cookies己经存在,则将重写Cookies的值,若不存在,建创建该Cookies。
利用该方法所设置的Cookies仅在当前会话中有效,若要在用户已经终止或又一次启动浏览器之后仍有效,就必须强制浏览器将Cookie保存到用户的硬盘上,为此。能够通过设置Cookies集合对象的Expires属性为此后的某一段时间来实现。
比如,若要设置名为VisitNum的Cookies在5天后过期,则设置方法为:
<%
Response.Cookies("VisitNum")=1
Response.Cookies("VisitNum").Expires=DateAdd("d",5,Date)
%>
比如:使用Cookie保存网友訪问站点的次数和近期一次訪问的日期和时间,并要求该Cookie在7天后过期。
要保存的信息有2个。并且这2个信息有一定的联系。因此。可用带索引的Cookies来实现。
另外,也能够用两个不同的Cookie来分别保存。
为了实现累加訪问次数。可利用Request对象的Cookie集合对象来获得Cookie的值。递增后,再赋回给该Cookie。Request对Cookie操作的方法与Response相似,仅仅只是Request是用来获取Cookies的值,而Response是用来设置Cookies的值。
(1)、带索引的Cookies的实现方法为:
<%
if Request.Cookies("UserVisit")("num")="" then '若该Cookie不存在
Response.Cookies("UserVisit")("num")=1 '则创建该Cookie并赋初值
else
Response.Cookies("UserVisit")("num")=Request.Cookies("UserVisit")("num")+1
end if
Response.Cookies("UserVisit")("LastVisit")=now
Response.Cookies("UserVisit").Expires=DateAdd("ww",1,Date)
%>
为了測试是否正确设置了Cookie,可用下面代码通过输出对应Cookie的值来实现:
<%="訪问人数为:"&Request.Cookies("UserVisit")("num") &"<BR>近期訪问时间为:" & Request.Cookies("UserVisit")("LastVisit")%>
(2)、用两个不同Cookie的实现方法(不带索引):
<%
Response.Cookies("VisitNum")=1
Resposne.Cookies("VisitNum").Expires=DateAdd("ww",1,Date)
Response.Cookies("LastVisit")=now
Response.Cookies("LastVisit").Expires=DateAdd("ww",1,Date)
%>
读书完本文章后,我相信你对Request.Cookies有了初步的了解。自己动手编几个实例就会对Request.Cookies有深入的理解。
Request.Cookies使用方法分析的更多相关文章
- C#中Request.Cookies 和 Response.Cookies 的区别分析
.NET中提供了读写Cookie的多种方法,Request.Cookies 是客户端通过 Cookie 标头形式由客户端传输到服务器的 Cookie:Response.Cookies 在服务器上创建并 ...
- web基础---->request的请求参数分析
当contentType为application/json的时候,在servlet中通过request.getParameter得到的数据为空.今天我们就java的请求,分析一下request得到参数 ...
- Servlet生命周期中的service方法分析
问题ServletLifeCycle中的service方法内,有super.service(request, response); 会执行this.doGet(HttpServletRequest r ...
- JSP页面中文参数传递get和post方法分析
原文 http://developer.51cto.com/art/200907/133499.htm 在项目中,我们经常遇到需要在JSP页面切换中传递中文字符.这主要有两种方式. ◆URL方式 例如 ...
- ASP:当 request.cookies 发生 Microsoft VBScript 运行时错误 (0x800A000D) 类型不匹配: '[string:
昨天当一个客户告诉我,登录后看不到图片的时候,我还不相信,因为我的浏览器测试发现一切正常. 通过QQ远程协助后,我才发现服务器端真的报错: Microsoft VBScript 运行时错误 (0x80 ...
- Request.Cookies 和 Response.Cookies 的区别
.NET中提供了读写Cookie的多种方法,Request.Cookies 是客户端通过 Cookie 标头形式由客户端传输到服务器的 Cookie:Response.Cookies 在服务器上创建并 ...
- ThinkPHP5 核心类 Request 远程代码漏洞分析
ThinkPHP5 核心类 Request 远程代码漏洞分析 先说下xdebug+phpstorm审计环境搭建: php.ini添加如下配置,在phpinfo页面验证是否添加成功. [XDebug] ...
- tomcat源码---->request的请求参数分析
当contentType为application/json的时候,在servlet中通过request.getParameter得到的数据为空.今天我们就java的请求,分析一下request得到参数 ...
- Response.cookies和Request.cookies
Response.cookies和Request.cookies的区别很重要,由于方法基本都是差不多的,特别对于初学者而言,很容易出现混淆. 简单说就是创建cookie用response,获取cook ...
随机推荐
- 作业执行器Job Executor
Job Executor 激活作业执行器 AsyncExecutor是一个组件,它管理线程池,来触发计时器和其他异步任务.其他实现也是可能的(例如使用消息队列,请参阅用户指南的高级部分). 默认情况下 ...
- ORM-老师信息系统
老师信息管理 思考 三种方式创建多对多外键方式及其优缺点. 通过外键创建 (自定义第三张表,通过外键与其他两张表关联 但是不能用Django ORM 多对多操作的语法) class Class(mo ...
- catkin详细解释
http://answers.ros.org/question/58498/what-is-the-purpose-of-catkin_depends/
- Java通过jedis操作redis(增删改查)
package sgh.main.powersite; import java.util.ArrayList; import java.util.HashMap; import java.util.I ...
- windows上的命令telnet
telnet可以测试端口号是否可用,比如: telnet ip:port 或者 telnet www.baidu.com PS:win7环境下,默认没有安装telnet客户端,你可以去“控制面板”-- ...
- css “裁剪”图片(显示图片的一部分)
背景:朋友有一个需求,就是列表页显示的图片要做裁剪,不然不按比例缩小图片看起来就变形了.本来想好的解决办法是用PHP来生成缩略图,然而试了好几个开源缩略图类都没有一个满意的,突然想到为什么不直接用CS ...
- [thinkPHP] buildSql可以查看tp CURD操作对应的SQL
$goods = M('Goods')->where($map)->buildSql(); echo $goods;
- 二分+Kruskal【p2798】爆弹虐场
Description 某年某月某日,Kiana 结识了一名爆弹虐场的少年. Kiana 仗着自己多学了几年OI,所以还可以勉勉强强给这位少年 讲一些自己擅长的题.具体来说,Kiana 先给这位少年灌 ...
- RabbitMQ (四) 工作队列之公平分发
上篇文章讲的轮询分发 : 1个队列,无论多少个消费者,无论消费者处理消息的耗时长短,大家消费的数量都一样. 而公平分发,又叫 : 能者多劳,顾名思义,处理得越快,消费得越多. 生产者 public c ...
- 【pb_ds】【平衡树启发式合并】【并查集】bzoj2733 [HNOI2012]永无乡
用并查集维护联通性.对每个联通块维护一个平衡树.合并时启发式合并.比较懒,用了pb_ds. #include<cstdio> #include<ext/pb_ds/assoc_con ...