ASP内置对象Request和Response用法详解.doc





《ASP内置对象Request和Response用法详解.doc》由会员分享,可在线阅读,更多相关《ASP内置对象Request和Response用法详解.doc(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、ASP内置对象Request和Response用法详解时间:2007-9-14 网友评论4条 【大 中 小】 内容摘要:Request和Response这两个对象是ASP所提供的内置对象中最常用的两个。在浏览器(或其他用户代理)和Web服务器之间,请求与响应中发生的信息交流可以通过ASP中的两个内置对象来进行访问和管理,这两个对象称为Request和Response对象。在ASP页中所要进行的工作几乎都要访问这两个对象,使用这两个对象的方式将影响页面的效率及可靠性。当然,它们的主要用途是访问用户发回到服务器的值,即从HTML页的FORM段获得或附在URL后面作为查询字符串,并创建合适的输出返回
2、给用户,且它们可以共享很多相同的因素。例如两个对象都可以使用存储在客户端计算机上的cookie。 因此,我们把内容分成两个独立的部分(每个对象一部分),并且首先从客户端与服务器这间的信息交流入手,然后再研究每一个对象。 研究的内容是: 客户端与服务器如何交流以传递Web或其他资源。 Request和Response对象的细节,以及它们之间的共同点。 如何通过一个窗体和查询字符串访问相应的值。 如何读入或创建cookie并存放在客户端的计算机上。 服务器的变量是什么?如何访问和修改HTTP报头。 说明其他相关条目的变化,如客户的证书使用。 客户端和服务器的交流 为节省篇幅,后面的内容中使用“浏览
3、器”(browser)一词。但需要记住的是,能够访问Web页面的应用程序绝不仅只有浏览器,有许多特殊的应用程序从站点上下载网页,如为那些视力有缺陷用户设计的特殊的客户端程序或者是用通常的浏览器有其他困难的人。最显而易见的例子是搜索引擎用来访问Web上的站点的robot。全面考虑这些因素,包括普通的Web浏览器,准确的词汇应该是用户代理(user agent)。 页面请求的对话 当一个浏览器向Web站点提出页面请求时,显然必须告诉服务器,其请求的是哪一个页面。首先要做的是通过域名与服务器建立连接,然后提供所请求的页面的全路径和名称。为什么要全路径和名称?Web是一个无国界的环境,所以必须创造一个
4、会话标识每个客户(将在以后介绍ASP如何做到这点)。 这就意味着每当服务器完成向客户发送页面后,服务器就彻底忘记了这个客户。因此,当客户请求下一个页面时,与一个新的访问者是完全相同的。服务器无法记住这个客户,相应的,也就无法判断它们上次请求的页面是哪一个。因为,不能使用相对路径来提供一个页面,即使页面包含一个相对的链接也不行,例如:AHREF=”Download.asp”NextPage/A浏览器将自动建立完整的新页面的URL,方法是使用当前页的域和路径;或使用页面HEAD段中的BASE元素,告诉浏览器一个页面中所有链接的其URL是什么。例如:BASEHERF=ASP内置对象Request和R
5、esponse用法详解(2)时间:2007-9-14 网友评论4条 【大 中 小】 当把鼠标指向一个页面的链接时,可在浏览器的状态栏中看到。当前页面的路径和当前域名或基域名或基路径已经与请求的页面名结合在一起了。 1、客户请求的细节 所请求页面的全路径和名称的组合是浏览器请求页面时发住服务器的唯一住处浏览器的请求也能包含浏览器宿主的住处和客户端运行的操作系统。实际的信息内容将随着浏览器的不同而有相应的变化,只有很少一部分能够由其他的应用程序如搜索引擎robot提供。为了更清楚地了解该信息,下面是从IE 5.0发出的一个对页面 Download.asp的请求信息:7/8/9910:27:16Se
6、ntGET/Store/Download.aspHTTP/1.1 Accept:application/msword,application/vnd.ms-execl,application/vnd.ms- powERPoint,image/gif,image/x-xbitmap,image/jpeg,image/pjpeg,application/x- comet,*/* Accept-Language:en-us Encoding:gzip,deflate Referer: Cookie:VisitCount=2&LASTDATE=6%2F4%2F99+10%3A10%3A13+AM Us
7、er-Agent:Mozilla/4.0(compatible;MSIE5.0;Windows98) Host:212.250.238.67 Connection:Keep-Alive从中可以看出,这些信息中有关于用户代理和用户连接的细节(如缺省的语言),也有能够接受的文件或应用程序的类型列表,这些都是MIME类型的,在后面将会见到更多。浏览器能够接受几种图像文件及多种Microsoft Office文件类型。“标准”的文件类型,如tesx/html和text/text没有列在其中。文件列表中*/*表示可向浏览器发回任何类型的文件,由浏览器解释或通过一个插件(plug-in)应用程序来进行解释
8、。 cookie: 条目包含的cookie存放在客户端的计算机上,并仅对该域有效。假如请求是点击链接的结果,而不是在浏览器的地址栏直接输入URL,则Referer:条目被显示出来,它包含了链接页面的完整的URL。 Host:条目包含客户计算机的IP地址或名称。然而,这还不足以准确辨别客户机。因为它们通过ISP连接时,IP地址是动态分配的,或者通过一个代理服务器连接时,IP地址是代理机的而不是实际的客户机的。 2、服务器响应的细节信息 为响应上述的请求,并对匿名的浏览器(即用户不必提供用户名和访问口令)提供请求的页面,下面的内容是从服务器发往客户机的:7/8/9910:27:16Received
9、HTTP/1.1200OK Server:Microsoft-IIS/5.0 Connection:Keep-Alive Date:Thu,8Jul199910:27:16GMT Content-Type:text/html Accept-Ranges:bytes Content-Length:2946 Last-Modified:Thu,8Jul199910:27:16GMT Cookie:VisitCount=3&LASTDATE=7%2F8%2F99+10%3A27%3A16+AM HTML restofpage /HTML可以看出服务器向客户端说明自己所用的软件及版本,第一行表明所使用
10、的是HTTP协议,及返回码的状态。信息“200 OK”表示请求被接受并得到了满足。后面的信息是被返回的页面的细节,包括MIME类型(Content-Length:)、大小(字节)、最近更改时间,和返回客户端存储的cookie。响应中的其他信息是页面内容的信息流。 在某些情况下,服务器响应一个请求后,不能返回一个页面,也许因为页面不存在,或都客户没有相应的权限来访问它。我们将在后面讨论安全问题。现在,对于请求页面不存在的情况(例如用户在浏览器的地址栏输入了错误的URL),返回的信息开头为:7/8/9914:27:16ReceivedHTTP/1.1404NotFound Server:Micro
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ASP 内置 对象 Request Response 用法 详解

限制150内