ASPNET简明教程 第4章 ASPNET的常用内置对象

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四章的常用内置对象
使用Response和Request响应用户请求。 使用环境变量获取环境信息。 定义、创建和使用Application对象。 用Session对象来记录用户信息。 使用Server对象。 了解 Cookie 的基础知识,设置和检索 Cookie。
Response对象
例子
Session对象的属性
• Session 对象的常用属性有: SessionID、TimeOut、
LCID、Contents集合和StaticObjects集合。 – SessionID表示一个会话的存在,可以区分不同的 Session。 – TimeOut属性表示在一个会话结束之前会等待用户没有任
如何使用Application对象
• 从Web站点的主目录开始,每个目录和子目录
都可以作为一个Application。只要在一个目录 中没有找到其他的Application,那么这个目录 中的每一个文件和子目录都是这个Application 的一部分。
配置Application
• 使用IIS配置Application
HTTP
例子
PATH_INFO
• PATH_INFO可以获得一个程序所在文件的
URL的值,使用这个变量通常可以使程序更 加灵活。
例子
REMOTE_ADDR
• 通过REMOTE_ADDR可以得到客户或代理服
务器的IP地址
例子
获取用户的浏览器的信息
• 要获取用户的浏览器的信息,最简单的方法
就是使用Request对象的Browser属性。 • 这个属性本身也是一个对象,它的常用属性 有两个: – (1)Browser:表示浏览器的名称 – (2)MajorVersion:表示浏览器的版本的整数位 – (3)Version:表示浏览器的完整版本号
•输出字符串到网页上 •重定向 •缓存HTML •输出文本文件的内容
Response对象
• Response对象是用于控制如何将响
应发送给用户的内置对象。它提供了丰富的 方法和属性用于控制响应的输出方式。
输出字符串到网页上
• 将一个字符串输出到网页上是Response对象的
一个最常用的功能,使用它的Write方法就可 以实现。
例子
Request对象
•get方法 •post方法 •使用环境变量
Request对象
• Request对象是中用于提取浏览器中
用户输入信息的内置对象。在使用这个内部 对象时,用户的信息可以通过表单来提交, 也可以通过直接用URL的参数来获取,还可 以通过环境变量来提供。
get方法
例子
StaticObjects集合
• 那些用<OBJECT>定义的对象可以用
StaticObjects集合来访问
Lock和UnLock方法的使用
• 由于 Web 程序是一个多用户的程序,那么对于一些
存在计算功能的程序就可能因为存在多个用户而产 生计算错误问题。 • Application 恰恰又是一个存储着共享信息的对象, 当有多个用户同时希望改变 Application 对象中某个 项目的内容的时候,就有可能出现数据不一致的问 题。 • 为了防止这个问题的发生,Application对象提供了 两种方法:Lock和UnLock。 –当希望修改某个项目的内容时,先用Lock方法将
Server对象
•Server对象的属性 •Server对象的方法
Server对象
• Server对象的属性反映了Web服务器的各种
信息,它提供了服务器可以提供的各种服务。 这个对象与Application对象和Session对象不 同,它不负责为用户存储什么信息,也没有 什么事件
Server对象的属性
例子
Application对象
•如何使用Application对象 •Contents集合和StaticObjects集合 •Lock和UnLock方法的使用 •Application事件
Application对象
• 在中,Application是的一
个特殊的内置对象,它代表一个目录以及它 所有子目录中的所有文件,方便了 文件之间的数据共享。 • 由于它是一个内置对象,所以使用它的时候 与使用Response对象和Request对象类似,不 需要进行任何对象的实例化,就可以直接使 用。
• 使用get方法进行数据提交是把用户要提交的
信息作为查询字符串加在URL的后面传给接 收程序。URL是指Uniform Resource Locators(统一资源定位器),它的通常形式是 类似http:/filename.ext形 式的字符串。而查询字符串则是加在URL的 后面,与前面的URL一起提交给服务器的字 符串。
何活动的最大时间,单位是分钟。 – LCID是表示不同的地区的一个内部标识。 –Contents集合和StaticObjects集合的使用与Application 对象的 Contents 集合和 StaticObjects 集合的使用方法一 样
Session对象的方法
• Session对象只有一个方法:Abandon,调用
例子
创建永久性Cookie
• 为了能够长期地保存Cookie信息,需要设置
Cookie的过期日期,这样才能让Cookie成为永 久性Cookie。
例子
使用Cookie字典
– OnStart是当第一个客户请求文件的时候,
• 将在第9章讲解这两个事件的使用方法。
Session对象
•Session对象的属性 •Session对象的方法 •Session对象的事件 •使用Session对象的注意事项
Session对象
• 提供了内置对象Session负责存储、
例子
重定向
• 在网站的设计过程中,通常会遇到需要把用
户带到一个新页面中。这时可以使用Response 的Redirect方法。在这种方法中要给出需要重 定向的页面的相对路径或URL。
例子
缓存HTML
• Response对象有一个属性是Buffer,这个属性的值用
来确定数据发送给客户之前是否要缓冲。 • 它的默认值是True,表示确定数据发送给客户之前 需要缓冲,也就是说把需要发送给客户的信息先放 置到一个预先设定的缓冲区中,然后再一次性地发 送给客户; • 如果把这个值设置为False,那么所有的信息都会在 产生的时候立即发送给客户。从速度上说,这种不 使用缓冲的方法会比使用缓冲的方法要慢得多。
Application对象锁住,限制其他的用户修改Application中 的项目的值,然后再对项目的值进行修改。 –修改完成后,使用UnLock方法把锁打开。
例子
Application事件
• Application有两个事件:OnStart和OnEnd。
由调用执行; – OnEnd 事 件 则 是 在 服 务 器 关 闭 的 时 候 , 由 调用执行,通常是把所有需要永久保存 的信息写入到磁盘中,以便在服务器重新启动并 被访问的时候重新加载。
例子
post方法
• 使用post方法可以用Request对象的Form集合属性来
得到用户提交的数据。这时,用户浏览器的地址栏 中不会显示相关的查询字符串。因此如果需要提交 的数据很多时,应该使用post方法,因为它对数据的 大小和长度没有什么限制。 • 如果使用Web表单而不是HTML表单的话,那么也 只能够使用post方法来获取数据,因为这是Web表单 默认使用的方法,无需在定义表单的时候说明。
Cookie
•什么是Cookie •设置Cookie •检索Cookie •检测用户是否使用了Cookie
什么是Cookie
• 在 Web 程序设计中,它表示一个长度不超过
4K 的一个普通的文本文件。这个文件在用户 的硬盘上,可以由Web浏览器进行访问。
Cookie基础知识
–会话Cookie就是在前一节中讲解Session对象时提
这种方法可以立即销毁Session对象并立即释 放Session对象占用的资源。 • 当Session对象所记录的内容不再有用的时候, 就可以使用这种方法将Session对象销毁。
Session对象的事件
• OnStart事件在客户第一次从应用程序中请求
页的时候由调用,OnEnd 事件在会话关闭的时候调用。当会话超时或 调用Session的Abandon方法的时候也会发生 这个事件。 • 在第9章中讲解
Session和Cookie的比较
• 根据要存储数据的重要性进行选择。 • 根据要存储的数据量的大小进行选择
设置Cookie
• 在中采用的是面向对象的方法来创
建Cookie,所有的Cookie都是由HttpCookie类 创建的。当在HttpCookie类上创建了一个实例, 那么就创建了一个Cookie。把需要在Cookie中 保存的信息准备好之后,再用Response对象的 AppendCookie方法把这个Cookie写到客户端 的硬盘上。
例子
输出文本文件的内容
• Response对象的WriteFile方法可以实现将文
本文件的内容值接像屏幕输出。 • 这种方法与Wirte方法一样都可以向客户输出 数据,惟一的不同在于Write方法是输出它所 带参数中保存的字符串,而WriteFile方法所 带的参数则是代表一个文本文件的名字,可 以把这个文件中的文本当作数据输出给客户。
例子
Contents集合
• Application对象的Contents属性是一个集合,
它包含了这个对象中所有的不是用 <OBJECT>定义的非对象项目信息。 • 使用Contents集合可以得到这个项目的值,方 法如下: – Response.Write(Application.Contents["greeting"]);
• Server 对象的 MachineName 属性用于存储主
机机器名。 • Server 对象的另一个属性是 ScriptTimeout 属 性,这个属性说明了在页面超时之前可以运 行多长时间。这个值的单位是以秒为单位的, 默认值是 90 秒。程序员可以通过设置这个值 来改变默认值。
Server对象的方法
例子
环境变量
• 每次从客户的浏览器向服务器发送请求时,
程序都可以搜集很多关于用户的信息。比如 主机名、IP地址、浏览器类型和操作系统等。 这些信息被称为服务器环境变量,可以通过 Request对象的ServerVariables集合来进行使 用
ALL_HTTP
• 在没有解析成为其他环境变量值前的所有
到的用于保存用户SessionID的Cookie。这个 Cookie是临时性的,保存在用户的内存中而不是 硬盘上,只在浏览器打开的时候才存在,一旦会 话结束或会话超时,这个Cookie就被删除。 –永久Cookie则是永久性地存储在客户的硬盘上, 并且在指定的过期日期之前一直可以使用。
• Cookie有两种形式:会话Cookie和永久Cookie。
读取和改变一个特定用户的会话信息。 –早期版本ASP的Session对象是依赖Cookie进行个
人身份的甄别的。 –而在ቤተ መጻሕፍቲ ባይዱ中,则可以选择把SessionID存储在 每一个链接的URL中。这样,如果用户的浏览器不 支持Cookie,那么也可以使用Session。当然, 仍然保留了使用Cookie来保存SessionID 的方法。
• • • • • • •
CreateObject方法用于在中创建所有的对象。 Execute方法用于把控制传递给其他的子例程或存储过程 GetLastError方法的作用是检索最近一次发生的错误。 HTMLEncode方法是一种重要的在网页上显示文本的方法。 MapPath方法可以把一个实际的文件转化成为它的目录路径。 Transfer方法也是可以把控制传递出去 URLEncode方法与HTMLEncode方法类似,只不过它可以把URL 中的所有特殊字符转化成为非功能的等价内容。
相关文档
最新文档