本文章介绍了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使用方法分析的更多相关文章

  1. C#中Request.Cookies 和 Response.Cookies 的区别分析

    .NET中提供了读写Cookie的多种方法,Request.Cookies 是客户端通过 Cookie 标头形式由客户端传输到服务器的 Cookie:Response.Cookies 在服务器上创建并 ...

  2. web基础---->request的请求参数分析

    当contentType为application/json的时候,在servlet中通过request.getParameter得到的数据为空.今天我们就java的请求,分析一下request得到参数 ...

  3. Servlet生命周期中的service方法分析

    问题ServletLifeCycle中的service方法内,有super.service(request, response); 会执行this.doGet(HttpServletRequest r ...

  4. JSP页面中文参数传递get和post方法分析

    原文 http://developer.51cto.com/art/200907/133499.htm 在项目中,我们经常遇到需要在JSP页面切换中传递中文字符.这主要有两种方式. ◆URL方式 例如 ...

  5. ASP:当 request.cookies 发生 Microsoft VBScript 运行时错误 (0x800A000D) 类型不匹配: '[string:

    昨天当一个客户告诉我,登录后看不到图片的时候,我还不相信,因为我的浏览器测试发现一切正常. 通过QQ远程协助后,我才发现服务器端真的报错: Microsoft VBScript 运行时错误 (0x80 ...

  6. Request.Cookies 和 Response.Cookies 的区别

    .NET中提供了读写Cookie的多种方法,Request.Cookies 是客户端通过 Cookie 标头形式由客户端传输到服务器的 Cookie:Response.Cookies 在服务器上创建并 ...

  7. ThinkPHP5 核心类 Request 远程代码漏洞分析

    ThinkPHP5 核心类 Request 远程代码漏洞分析 先说下xdebug+phpstorm审计环境搭建: php.ini添加如下配置,在phpinfo页面验证是否添加成功. [XDebug] ...

  8. tomcat源码---->request的请求参数分析

    当contentType为application/json的时候,在servlet中通过request.getParameter得到的数据为空.今天我们就java的请求,分析一下request得到参数 ...

  9. Response.cookies和Request.cookies

    Response.cookies和Request.cookies的区别很重要,由于方法基本都是差不多的,特别对于初学者而言,很容易出现混淆. 简单说就是创建cookie用response,获取cook ...

随机推荐

  1. django框架实现restful风格的API开发

    RESTful风格的要求:https://www.cnblogs.com/chichung/p/9933116.html 利用django原生的框架直接做RESTful的API开发是怎样的呢?感受一下 ...

  2. 《Java编程思想》笔记 第六章 访问权限控制

    1.编译单元 一个 编译单元即 .java 文件 内只能有一个 public 类  且该文件名必须与public 类名 完全一致. 编译单元内也可以没有public类 文件名可随意. 2. 包:库单元 ...

  3. 2017/3/7 值得"纪念"的错误

    使用viewpager和fragment做个能左右滑动的效果,结果怎么弄怎么有问题,先是怀疑什么viewPager维护刷新内部fragment什么的,又是在FragmentPageAdapter的ge ...

  4. SaaS多租户模式数据存储方案比较

    云计算多租户几乎用于所有软件即服务 (Software as a Service, SaaS) 应用程序,因为计算资源是可伸缩的,而且这些资源的分配由实际使用决定.话虽如此,用户可以通过 Intern ...

  5. NAT+穿洞基础知识梳理

    参考:https://www.cnblogs.com/shilxfly/p/6589255.html https://blog.csdn.net/phoenix06/article/details/7 ...

  6. Codeforces 811 C. Vladik and Memorable Trip

    C. Vladik and Memorable Trip   time limit per test 2 seconds memory limit per test 256 megabytes inp ...

  7. Spfa+DP【p2149】[SDOI2009]Elaxia的路线

    Description 最近,Elaxia和w**的关系特别好,他们很想整天在一起,但是大学的学习太紧张了,他们 必须合理地安排两个人在一起的时间. Elaxia和w**每天都要奔波于宿舍和实验室之间 ...

  8. Linux命令之fdisk

    fdisk fdisk [选项] <disk>  改变分区表 fdisk [选项] –l <disk>  列出所有分区表 fdisk –s <partition(分区编号 ...

  9. small test on 5.30 night T2

    (题面写错了,应该是一条从b -> a 的边) 让我们设状态 (a,b,c) 表示存在一个点k,使得  dist(k,b) - dist(k,a) * 2 + 3 = c,显然这里的第三维可以压 ...

  10. 【AC自动机】【状压dp】hdu2825 Wireless Password

    f(i,j,S)表示当前字符串总长度为i,dp到AC自动机第j个结点,单词集合为S时的方案数. 要注意有点卡常数,注意代码里的注释. #include<cstdio> #include&l ...