ASP系列教程第8课 Request对象及其使用_第1页
ASP系列教程第8课 Request对象及其使用_第2页
ASP系列教程第8课 Request对象及其使用_第3页
ASP系列教程第8课 Request对象及其使用_第4页
ASP系列教程第8课 Request对象及其使用_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、8.1 课前导读8.2 课堂教学8.3 上机练习8.4 课后作业第8课 Request对象及其使用 18.1 课前导读 输入、处理和输出是所有程序设计语言的根本模式,ASP作为一种类程序设计语言也不例外。在ASP中,Request和Response对象分别完成输入和输出的大局部功能,是ASP技术中非常重要的两个对象: Response对象:用来访问效劳器端所创立的并发回到客户端的响应信息,包括直接发送信息给浏览器、重定向浏览器到另一个URL或设置cookie的值。它也提供了一系列的方法用来创立输出,例如无处不在的Response.Write方法。2 Request对象:为脚本提供了当客户端请求

2、一个页面或者传递一个窗体时,客户端提供的全部信息。这包括能指明浏览器和用户的HTTP变量,在这个域名下存放在浏览器中的cookie,任何作为查询字符串而附于URL后面的字符串或页面的段中的HTML控件的值。也提供使用SecureSocketLayer(SSL)或其他加密通信协议的授权访问,及有助于对连接进行管理的属性。 值得一提的是:虽然Request对象的属性与方法各有一个,比Response对象的9个属性8种方法少了许多,但Request对象的集合确有5种,除Cookies集合与Response对象的Cookies集合相对应外,新增的4种集合大大丰富了Request对象获取输入信息的能力。

3、38.2 课堂教学 8.2.1 Request对象概述 8.2.2 ASP与表单的交互 8.2.3 使用Form集合 8.2.4 使用Querystring集合 8.2.5 使用Cookies集合 8.2.6 使用ClientCertificate集合48.2.1 Request对象概述 1. Request对象的集合 2. Request对象的属性 3. Request对象的方法 4. Request对象的使用58.2.1 Request对象概述 Request 对象是负责从客户端浏览器获取用户信息的对象。它是ASP中重要的效劳器内置对象,它连接着Web效劳器和Web客户端程序。利用Requ

4、est对象可以接收基于HTTP请求的所有用户信息,如用Post方法或Get方法传送来的参数以及Cookie和Server Variable等等。61. Request对象的集合 Request对象提供了5个集合,可以用来获取客户端对Web效劳器请求的各类信息,其说明见表8-1。表8-1 Request对象的集合及说明集合名称说明ClientCertificate当客户端访问一个页面或其他资源时,用来向服务器表明身份的客户证书的所有字段或条目的数值集合,每个成员均是只读Cookies根据用户的请求,用户系统发出的所有cookie的值的集合,这些Cookie仅对相应的域有效,每个成员均为只读For

5、mMETHOD的属性值为POST时,所有作为请求提交的段中的HTML控件单元的值的集合,每个成员均为只读QueryString依附于用户请求的URL后面的名称数值对或者作为请求提交的且METHOD属性值为GET(或者省略其属性)的,或中所有HTML控件单元的值,每个成员均为只读ServerVariables随同客户端请求发出的HTTP报头值,以及Web服务器的几种环境变量的值的集合,每个成员均为只读 在这些集合之中,最常使用的是Form、Cookies和QueryString集合。72. Request对象的属性 Request对象唯一的属性是TotalBytes,它提供关于用户请求的字节数量

6、的信息:返回由客户端发出的请求信息的字节数。使用中通常关注客户端各项请求信息的值而非整个请求字符串,因此该属性很少被用于ASP页。3. Request对象的方法 Request对象唯一的方法是BinaryRead,它允许访问从用户页面段中传递给效劳器的请求信息的完整内容。其语法格式为:Request.BinaryRead(count)8 说明: count表示当数据作为POST请求的一局部发往效劳器时,从客户请求中获得数据的字节数。 该方法返回一个Variant数组(或者SafeArray)。 如果ASP代码已经引用了Request.Form集合,这个方法就不能再用。同样,如果用了Binary

7、Read方法,也不能再访问Request.Form集合。94. Request对象的使用 在ASP中,当客户端请求一个页面或传递一个表单时,Request对象为脚本提供了客户端浏览器所提供的全部信息,包括用户请求的所有信息、用户为该域名存放在浏览器下的Cookie、使用Secure Socket Layer(SSL)或其它加密通信协议的授权访问以及对连接进行管理的属性等。Request对象可以利用集合、属性、方法等来进行参数的传递。其语法格式为:Request. 集合 | 属性 | 方法 ( 变量 )10 Request对象中有5个集合可以用来完成客户端对ASP效劳器的请求的响应。实际上Req

8、uest对象是由一群对象的集合组成,在引用客户端页面定义的变量时,有多种方法可以使用。例如,要在Request对象的Form中取得名为“姓名的信息,可以使用下述赋值命令:name=Request.Form(姓名) 也可以不指定集合名(Form),直接使用命令:name=Request(姓名) 程序会以QueryString、Form、Cookies和ServerVariables的顺序搜索所有集合,当发现一个匹配的变量时,就认定它是要引用的成员。当然,编程实践中,为防止不同集合中同名变量引用的二义性,最好显式地指定集合。118.2.2 ASP与表单的交互 在动态网页设计中,表单是必不可少的元素

9、,许多功能的实现都与表单密不可分。表单的主要功能是接受用户填写在表单中的文字、选择项等内容,在HTTP的POST方法之后,由客户端浏览器将信息发送到效劳器端。 由表单接受用户输入的信息一般要按照程序预设的逻辑判断进行检查,这种检查根据需要可以在客户端或效劳器端进行。客户端的逻辑判断一般与表单放在一个页面内,常适用于较为简单的判断;效劳器端的逻辑判断只能由表单内action属性所指向的ASP网页来完成,由于效劳器端有功能更为强大的对象模型,能实现更为复杂的逻辑判断,因此适用于复杂的逻辑判断。12 网页中的表单与集合Form是两个不同的概念,虽然它们的英文名称相同。表单的功能是在客户端接受用户的输

10、入信息,是在客户端由浏览器解释的HTML标记,而集合Form则是在效劳器端的一种数据结构。一般情况下,客户端表单的信息在执行网页的Post方法后,在效劳器端Request对象的Form集合中会有相应的量与之对应。13 在HTML网页中,表单以标记开始和结束。表单标记的语法格式为: 其中 “URL设置表单处理程序的相对或绝对位置(假设要将表单数据寄到电子邮件信箱,可以设置该电子邮件信箱的URL;假设没有设置Action属性的值,表示使用默认的表单处理程序); “传送方式用于指明交互表单的信息传送方式,有Post和Get两种。14 其他属性及其说明见表8-2。表8-2 表单的其他属性说明属性名说明

11、accept-charset设置表单数据的字符编码方式,服务器依据该属性指定的字符编码方式处理表单数据。字符编码方式定义于RFC2045,中间以逗号隔开accept设置作为服务器处理表单数据的Mime类型enctype设置将表单数据返回服务器时所采取的编码方式,默认值为application/x-,若您允许浏览者上传文件给服务器,那么ENCTYPE的值须为Multipart/Form-Data;若要将表单数据寄到电子邮件信箱,那么enctype的值可为Text/P设置表单的名称(限英文),此名称可供Script使用。target设置用来显示表单处理程序结果的目标框架。 在表单

12、中可以使用、 、 、 等控件来定义表单信息项,参见第6课。15 单击表单中的“Submit控件,将触发表单的提交事件:onSubmit;单击表单中的“Reset控件,将触发表单的重置事件:onReset。 使用表单传送信息的方式通常有下述三种: 由HTML网页中的表单传送信息给处理该信息的ASP文件; 由ASP文件中的表单传送信息给另一个ASP文件,后者处理该信息; 在ASP文件中的表单所传送的信息由其自身进行处理。 其中第3种方式效率较高,但编程较复杂。16 【例8-1】ASP与表单的交互。 使用HTML网页中表单输入并提交信息,网页文件名为8_1.htm,其代码如下: 利用表单输入信息 请

13、输入 姓名: 性别:男 女 17 当用户在浏览器中输入表单数据并单击“提交按钮后,效劳器端的表单处理程序8_1_1.asp可以利用Request对象读取浏览器端的数据并返回相应信息。表单处理程序8_1_1.asp的代码如下: 使用Request对象获得表单信息 欢送您登录本站点 如不对,返回 18 上例可以改为使用一个ASP文件传送和处理信息。 【例8-2】表单所传送的信息由其所在的ASP文件自身进行处理。 代码如下: 利用表单输入信息 ASP与表单的交互% xm=Request.Form(姓名) xb=Request.Form(性别) if xm then Response.write 欢送

14、登录本站点, Response.write 您是 & xm if xb =男 then Response.write 大侠 else Response.write 侠女 end if Response.write 如不对,返回 Response.end end if%19 请输入 姓名: 性别:男 女 208.2.3 使用Form集合 当使用表单的Post方式提交数据时,表单中的数据被保存在Request对象的Form集合中。使用Form集合来传递数据的语法格式如下:Request.Form(element)(index)|.Count 其中,element为Form集合所要检索的表单元素(控

15、件)名称;Index用于指定表单元素多个值中的某一个,当然此表单元素有多个值时此项才有意义;Count用于指定表单某元素的值的个数。211. 读取Form集合中特定元素对象的值2. 读取Form集合中所有元素对象的值3. 读取Form集合的某元素对象的特定值4. 读取Form集合的某元素对象的全部参数值 221. 读取Form集合中特定元素对象的值 【例8-3】读取Form集合中特定元素对象的值。 首先建立一个输入数据的HTML表单文件8_3.htm,其代码如下: 输入数据的表单 输入数据的表单 姓名: 性别:男 女 密码: 爱好: 音乐 汽车 钓鱼 集邮 绘画23 学历: 小学 中学 大专

16、本科 研究生 生活格言: 单击“提交按钮,调用表单处理程序8_3.asp将用户输入的信息传递给效劳器,经处理后反响给用户,显示结果。24 文件8_3.asp的代码如下: Request对象的Form集合例子 Request对象的Form集合例子 欢送您登录本站点% Response.write(您的姓名是: & Request.Form(xm) & ) Response.write(您的性别是: & Request.Form(xb) & ) Response.write(您的密码是: & Request.Form(mm) & ) Response.write(您的爱好是: & Request.

17、Form(ah) & ) Response.write(您的学历是: & Request.Form(xl) & ) Response.write(您的生活格言是:) Response.Write Request.Form(adage)&%这些信息对吗?如不对,返回252. 读取Form集合中所有元素对象的值 上面介绍了如何传递Form集合中特定元素对象的值,下面介绍如何读取Form集合中所有元素对象的值。 【例8-4】在例8-3中使用循环语句读取Form集合中所有元素对象的值。 有两种循环语句可以读取Form集合中所有元素对象的值。26 使用“For each In循环语句,将文件8_3.as

18、p的代码改为: 用For each In语句读取Form集合例子 用For each In语句读取Form集合例子 欢送您登录本站点% For each Item in Request.Form Response.Write(Item&:) Response.Write(Request.Form(Item)&) Next% 这些信息对吗? 如不对,返回 27 使用“Fornext循环语句,将文件8_3.asp的代码改为: 用Fornext语句读取Form集合例子 Fornext语句读取Form集合例子 欢送您登录本站点% For I=1 to Request.Form.count Respon

19、se.Write(Request.Form(I)&) Next% 这些信息对吗? 如不对,返回 这种方法不能得到对象的名称,显示结果如图8-4所示。283. 读取Form集合的某元素对象的特定值 当Form集合中的元素对象具有多个值时(如checkbox、select等控件对象),欲读取某个特定的参数可以使用Index来读取。 【例8-5】读取Form集合的某个多值元素的特定值。输入数据的HTML表单文件8_5.htm同8_3.htm,表单处理程序8_5.asp的代码如下: 读取Form集合的某个多值元素的特定参数值 读取Form集合的某个多值元素的特定参数值 欢送您登录本站点% Respon

20、se.Write(Request.Form(xm)&的第二爱好是:) Response.Write(Request.Form(ah)(1)&)% 这些信息对吗? 如不对,返回 运行结果 294. 读取Form集合的某元素对象的全部参数值 与读取Form集合中所有元素对象的值一样,也可以采用两种循环语句来读取Form集合的某元素对象的全部参数值。以Fornext循环为例。 【例8-6】读取Form集合的某元素对象的全部参数值,如图8-6所示。 输入数据的HTML表单文件8_6.htm同8_3.htm,表单处理程序8_6.asp的代码如下:30 读取Form集合的某元素对象的全部参数值 读取For

21、m集合的某元素对象的全部参数值 欢送您登录本站点% For I=1 to Request.Form(爱好).count Response.Write(Request.Form(xm)&的第&I&爱好是:) Response.Write(Request.Form(ah)(I)&) Next% 这些信息对吗? 如不对,返回 程序运行结果。 说明:在利用Form集合读取参数时,与之相对应的HTML页面中的表单的Method属性一定要设置成Post才行,否则将无法读取参数。318.2.4 使用Querystring集合 Querystring集合是Request对象中最常用的另外一个集合,与Form集

22、合不同,Querystring集合读取参数时,HTML表单的Method应设置成Get。 除了读取表单对象传递的参数之外,Querystring集合还可以通过读取HTTP查询字符串中的参数值来传递参数。使用Querystring集合的语法格式如下:Request.Querystring(变量)(index)|.Count 其中,“变量为在HTTP查询字符串中指定要检索的变量名称;Index用于检索变量多个值中的某一个,当然此变量有多个值时此项才有意义;Count用于指定Querystring中某变量值的个数。328.2.4 使用Querystring集合1. 利用Querystring集合读取

23、 表单的参数2. 利用Querystring集合读取 HTTP查询字符串中的参数331. 利用Querystring集合读取表单的参数 利用Querystring集合读取表单的参数应将表单的Method属性设置为Get。其方法与使用Form集合相似。 【例8-7】利用Querystring集合读取表单的参数。 输入数据的HTML表单文件8_7.htm与8_3.htm相似,只是表单的Method属性设置为Get,表单处理程序8_7.asp的代码如下:34 Request对象的Querystring集合例子 Request对象的Querystring集合例子 欢送您登录本站点% Phone=Req

24、uest(UserPhone) Response.write(您的姓名是: & Request.Querystring(xm) & ) Response.write(您的性别是: & Request.Querystring(xb) & ) Response.write(您的密码是: & Request.Querystring(mm) & ) Response.write(您的爱好是: & Request.Querystring(ah) & ) Response.write(您的学历是: & Request.Querystring(xl) & ) Response.write(您的生活格言是:)

25、 Response.Write Request.Querystring(adage)&%这些信息对吗?如不对,返回运行结果 352. 利用Querystring集合读取HTTP查询字符串中的参数 HTTP查询字符串中的变量值由问号(?)后面的值指定。Querystring集合可以检索HTTP查询字符串中的变量值。 当表单的Method属性为Get时,表单中的数据被保存在Querystring集合中,当表单的Method属性为Post时,Querystring取回标识在URL后面的HTTP查询字符串中的变量值。 读取Querystring中某个变量值有三种方法: 通过Request(变量)读取,

26、其中“变量是指Querystring集合的变量。36【例8-8】通过Request(variable)方法读取Querystring的某个变量。 编写ASP程序8_8.asp如下: 通过Request(variable)方法读取Querystring的变量 通过Request(variable)方法读取Querystring的变量 ASP培训班通讯录 赵一 钱二 张三 李四 王五 孙六 该程序提供链接方式(链接到ASP程序8_8_1.asp),传递HTTP查询字符串,运行结果。37 ASP程序8_8_1.asp通过Request(variable)方法读取Querystring的变量,其代码如

27、下: 通过Request(variable)方法读取Querystring的变量 通过Request(variable)方法读取Querystring的变量 的通讯录是 : 住址: 38 通过Request.Querystring(变量)读取,其中“变量是Querystring集合的变量。 只需将ASP程序8_8_1.asp改为: 通过Request.Querystring(variable)方法读取Querystring的变量 通过Request.Querystring(variable)方法读取Querystring的变量 的通讯录是 : 住址: 39 通过Request.Querystr

28、ing(Serial)读取,其中Serial是Querystring集合的变量的序号。 将ASP程序8_8_1.asp改为: 通过Request.Querystring(variable)方法读取Querystring的变量 通过Request.Querystring(variable)方法读取Querystring的变量 的通讯录是 : 住址: 三种方法所得到的结果是相同的。408.2.5 使用Cookies集合 Cookies集合是Response对象和Request对象共有的一项经常用到的集合。 用户在通过HTTP协议访问一个主页时,每次连接时都要重新开始。因此,如果要判别某个用户是否曾

29、经进入本网站,那么只能使用Cookies了。当用户第一次访问网站时,可以利用Response对象的Cookies集合将数据存储到客户端计算机,当用户再次访问此网站时,则可利用Request对象的Cookies集合取得相关信息。418.2.5 使用Cookies集合 1. Cookies技术 2. Cookies的特点 3. Cookies的属性 4. Cookies的使用 421. Cookies技术 cookies是一种Web效劳器通过浏览器在访问者的硬盘上存储信息的手段。而将cookies用于INTERNET的本意是为了克服HTTP天生的无记录状态,众所周知,浏览器与Web效劳器是利用HT

30、TP进行通信的,而HTTP又是无记录的,当一个请求发送到Web效劳器时,无论其是否是初次来访,效劳器都会把它当作第一次来对待,根本没有对它的记忆,为了克服这一缺陷,客户端永久性的cookies应运而生。 编写cookies文件时,用户需要的信息主要有cookies的截止日期、cookies访问域名的URL、cookies变量名称和一些与cookies变量有联系的数据。43 相对其较简单的包含内容,cookies能为站点和用户所带来的好处实在太多,首先它可以让Web站点跟踪特定访问者的访问次数、最后访问时间和访问者进入站点的路径;其次它可以告诉在线广告商广告被点击的次数;再者它可让用户在不键入密

31、码和用户名的情况下进入曾经浏览过的一些站点;另外还可以帮助站点统计用户资料以实现个性化效劳。 Cookies是通过HTTP Headers从效劳器端返回到浏览器上。首先,效劳器端在响应中利用Set-Cookies Headers来创立一个Cookies,然后,浏览器在它的请求中通过Cookie Headers包含这个已创立的Cookies,并把它返回效劳器,从而完成浏览器的认证。442. Cookies的特点 在HTTP协议下,Cookies仅仅是一个文本文件,是效劳器在浏览器端写入的小文件。 Cookies存放在浏览器端的本机磁盘上,而不是存放在效劳器端。通常,Cookies包含用户的有关信

32、息(如身份识别号码、密码、用户在Web站点上购物的方式或用户访问该站点的次数等)。无论何时用户连接到效劳器,Web站点都可以访问Cookies信息。45 使用Cookies的好处有以下几点: 可以自由决定Cookies的生命周期,需要的话,甚至可以将Cookie的生命周期设置成数周、数月或数年,不必担忧cookies会因自动消失而失去某些信息。 由于cookies是存放在浏览器端的本机磁盘上,故不会占用效劳器端的磁盘空间。 cookies可以记录浏览者的个人信息,因此,站点的制作者就可以根据cookies记录的信息,设计出独具浏览者个人风格的网页或信息。46 使用cookies的缺点: 假设浏

33、览者禁止效劳器在浏览器端写入cookies,cookies就无法记录个人信息。 只能记录字符串、数值等简单的数据类型,无法记录对象、数组等复杂的数据类型。 由于cookies存放在浏览器端,所以它可能被浏览者删除或拒绝写入。 cookies会造成平安上的威胁,导致个人信息被窃取。473. Cookies的属性 Cookies共有五种属性,指定cookies的有关信息。Cookies属性及其说明见表8-3。表8-3 Cookies属性及其说明属性名称说明Domain指定只有某个Domain(网域)可以存取该cookie,只写属性Expirescookie的过期日期。为了在会话结束后将cookie

34、存储在客户端磁盘上,必须设置该日期。若此项属性的设置未超过当前日期,则在任务结束后cookie将到期,只写属性HasKeys指定cookie是否包含关键字Key,只读属性Path指定只有特定路径可以存取该cookie,默认为应用程序的路径,只写属性Secure用于设定Cookie是否在一个安全的渠道传递。当一个安全渠道没有在HTTP首页被发现,Cookie信息将不发送484. Cookies的使用 Cookies是通过Response对象的Cookies集合来创立的,当然,如果Cookies已存在,则可以通过Response对象来设置新的Cookies值并删除旧值。其语法格式如下:Respon

35、se.Cookies(cookies名)(key)|.属性=值 说明: cookies名是用户自定义的Cookies名称; key为可选参数,如指定Key,则Cookies就是一个字典,该参数值将被设置为“值,并可以在以后的接收中使用;49 “值指定分配给Cookies属性的值。 属性是指Cookies属性。 Cookies默认的生命周期起始于它被写入浏览器端的那一刻开始,结束于浏览器结束执行时;如果要设置Cookies的存在期限,可以使用Response.Cookies(name).Expries属性;当存在期限截止时,Cookies将自动从浏览器端的本机磁盘上删除。 Reponse对象的C

36、ookies集合用于写入Cookies,而Request对象的Cookies集合则可以读出Cookies并向效劳器端传递。50 (1) 不带Key的Cookies的创立和读取 对于不带Key的Cookies的创立,只要指定Cookies的参数和其相应的值即可。 【例8-9】创立两个cookies:myBox和mySphere。如以下程序所示: Cookies例子 51 代码以8-9.asp存盘,并运行即创立了Cookies。创立好Cookies以后,可以通过如下的语句读取相应的值:Response.Cookies(cookies名) 其中,cookie名是已创立的Cookies的名称。52 【

37、例8-10】读取8-9.asp创立的Cookies中“myBox的值。 8-10.asp的代码如下: 读取不带Key的Cookie 读取不带Key的Cookie% Response.Write mybox值: Response.Write(Request.Cookies(mybox)&) if Response.Cookies(mybox).Haskeys=False then Response.Write(mybox未带Key) Else Response.Write(mybox带有Key) end if% 53 如果只是在当前的网页里使用Cookies,则上面的语句已经足够了。如果希望在重

38、新启动浏览器后仍旧可以识别这个Cookies,就必须将Cookies存入到浏览器的文件当中。这只需设置Cookies在客户端可以保存的时间。将8-9.asp改为如下代码: Cookies例子 54 其中date()+7表示保存的时间为7天。每一个Web效劳器都会产生一个与其网站相关的Cookie文件名称,并将其储存在客户端的计算机中。通常,如果使用Win98/Me系统,Cookie文件存放在C:WindowsCookies目录中;如果使用的是Win2000/XP系统,Cookie文件存放在C:Documents and Settings中该用户目录下的Cookies子目录中。 运行修改后的程序

39、8-10.asp,就可以在客户端的本机磁盘中找到Cookies文件,如图8-10所示。55 (2) 带Key的Cookies的创立和读取 一个Cookie可以有多个值(这有点像数组),这样的Cookie被称为Cookies字典,Cookies字典中每个Cookie的值被分配给一个Key(数组下标),可以设置指定的Cookie(Key)的值。 【例8-11】创立一个Cookies字典:myBox,该Cookie包含3个值:30、40、50,其Key分别是:length、width、height。 程序8-11.asp代码如下:56 创立一个Cookies字典例子 说明:在指定其属性值时,不能带K

40、ey,否则会产生错误。如下述代码将出现“运行错误。Response.Cookies(myBox)(height).Expires = date()+7 57 对于Cookies字典,可以通过如下的语句来读取相应的值:Response.Cookies(cookie名)(Key名) 其中,“Key名是已创立的Cookies字典的一个Key的名称。也可以通过如下语句读取:Response.Cookies(Name)(Serial) 其中,Serial是已创立的Cookies字典的Key的序号。58 【例8-12】读取Cookies字典myBox的值。 程序8-12.asp代码如下: 读取带Key的C

41、ookies 读取带Key的Cookies% Response.Write mybox的值:& Response.Write(Request.Cookies(myBox)(length) & , ) Response.Write(Request.Cookies(myBox)(width) & , ) Response.Write(Request.Cookies(myBox)(height) & ) Response.Write(Request.Cookies(myBox)(1) & , ) Response.Write(Request.Cookies(myBox)(2) & , ) Respo

42、nse.Write(Request.Cookies(myBox)(3) & ) % 程序8-12.asp运行结果如图8-11所示。59 (3) Cookies的重建 对于已建立的Cookies,要重建它,只要使用如下的语句即可重建: Response.Cookies(Name)=Value假设是建立Cookies字典,则还要加上相应的Key值。 如果一个存在的Cookie并没有一个Key值,但是Response.Cookies指定了Key的名称和值,则这个存在的Cookie将被删除,并创立新的Key名和值。同样,如果一个存在的Cookie有Key值,但是Response.Cookies没有指定

43、Key名,则这个存在的Key值将被删除。例如,先运行了例8-9后,又运行例8-11,则得到的Cookie文件如图8-12所示。608.2.6 使用ClientCertificate集合 当客户端通过ASP访问效劳器的一个页面或其它资源时,可以通过Client Certificate集合向效劳器说明身份,而身份的说明则通过“关键字和“关键字子字段两局部参数来实现。具体参数如表8-2、表8-3所示。 61关键字参数说明Certificate以ASN.1格式返回所有服务器端身份权限的二进制信息Flags提供其它额外的服务器身份权限的标签,包括ceCertPresent与ceUnrecognizedIssuer等,其常数值分别为1、2。前者表示服务器端已经提出权限信息,而后者表示服务器端最近一次的权限为未知的发行者。Issuer以字符串的类型返回发行者身份权限的子字段信息,当子字段的数据超过一个则以“,”将其分隔,例如:C=US,OU=SoftwareDevelop等SerialNumber将四组十六进位序号以ASCII格式返回,其中以“,”作为分隔符号,例如:FF-00-CCSubject以字符串

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论