含6个可直接调用和访问的内置对象,分别是request,response,server,session,cookie,application
用来维护有关当前应用程序、HTTP请求、web服务器的活动状态等基本信息
一、
Request对象对应ASP.NET中的HttpRequest类,Request对象用于获取从浏览器向服务器所发送的请求中的信息
服务器端的Request对象就会读取这些通过HTTP请求发送的数据
Request对象的调用方法如下:
Request.Collection("Variable")
Collection是一个属性集合,包括QueySrting,Form,cookies和ServerVariables,表示获取数据的方法
Form集合用于收集表单中使用POST方法提交的请求数据,对数据的提取必须是在服务器端进行,而且POST请求必须由Form表单来发送
Request.Form["name'].toString();
QueryString用于接收使用GET方法提交的数据信息
Request.QueryString["UserNameTxt"].toString();
使用QueryString和Form属性获取数据的区别在于,前者是一种显示传递,用户可以在地址栏中看到传递的参数及参数值;而后者是一种隐式传递,在传递过程中,用户是无法看到所传递的数据的。
Request的ServerVariables属性包含了客户机和服务器的相关环境变
HTTP_USER_AGENT 用于获取用户浏览器的类型和版本号
REMOTE_ADDR 用于获取用户的IP地址
REQUEST_METHOD 用于获取用户提交数据的方法,如GET和POST
LOCAL_ADDR 用于获取服务器地址的IP地址
SERVER_NAME 用于获取服务器的主机名
PATH_INFO 用于获取但前执行程序的虚拟路径
PATH_TRANSLATED 用于获取当前执行程序的绝对路径
CONETNT_LENGTH 用于获取请求程序所发送内容的字符总数
CONTENT_TYPE 用于获取请求的信息类型
GATEWAY_INTERFACE 用于获取网管接口
QUERY_STRING 用于获取URL的附加信息
SCRIPT_NAME 用于获取当前程序的文件名(包含虚拟路径)
SERVER_PORT 用于获取服务器接受请求的端口
SERVER_PROTOCOL 用于获取服务器的协议和版本号
Request还有一个cookie属性,该属性包含了Cookie对象
二、
Response对象
Response对象对应于ASP.NET中的HttpResponse
Response将用于回应客户浏览器
Response对象的相关属性和方法如下:
ContentType属性
Buffer属性
BufferOutPut属性 表示是否对页面进行缓冲输出,仅适用于ASP.NET
Clear属性
ClearContent属性 用于清除缓冲区的Response显示输出信息
ClearHeaders属性 用于清除缓冲区的头信息
Expires属性 用于设置页面在浏览器Cache中失效的时间长度,单位为分钟
ExpiresAbsolute属性 用于设置页面在浏览器Cache中失效的具体时间
Flush方法
Write方法 用于为当前页面输出指定文本
End方法 用于立即停止当前程序的处理并返回结果
BinaryWrite方法 用于将当前指定信息不进行任何字符转换直接写到当前的HTTP输出,此方法主要用来输出非字符的信息
WriteFile方法 用于将内容写到指定的文件中
Redirect 用于设置页面重定向
Response对象的Write方法可以说是我们用的最多的语句,它主要用来在页面上输出文本,如:
Response.Write("Hello, World!")
Response.Redirect("Login.apsx")
在Response对象中也包含了一个cookies集合,该集合包含一些cookie对象
写入Cookie
Response.Cookies["xxxx'].value= xxxxxxxxx;
设置Cookie的过期时间
Response.Cookies["xxx"].Expires=DateTime.Now.AddDays(2);
读取Cookie
Request.Cookies["xxx"].Value
三、
Server对象
Server对象对应于ASP.NET中的HttpServerUtility类,它允许方法服务器本身,获取有关服务器的相关信息
Server对象的常用属性和方法如下:
MachineName属性 用于获取服务器的计算机名称
ScriptTime属性 用于设置或获取请求服务器的超时时间,单位为秒
CreateObject方法 用于创建COM对象的一个服务器实例
Execute方法 用于使用另一页面来执行当前请求
Transfer方法 用于终止当前页的执行,并开始执行当前请求
HtmlDecode方法 用于对要显示在浏览器中的字符进行解码
HtmlEncode方法 用于对要显示在浏览器中的字符进行编码
UrlDecode方法 对字符串进行解码,该字符串为了HTTP传输而编码并在URL中发送到服务器
UrlEncode方法 用于编码字符串,以便通过URL从web服务器到客户端执行可靠的HTTP传输
UrlPathEncode方法 对URL字符串的路径执行URL编码,返回该编码字符串
MapPath方法 返回与web服务区上的虚拟目录对应的物理路径
ToString方法 以字符串的形式返回对象的信息
HtmlEncode是Server对象中用得较多的一个方法,它用于对显示在浏览器中的字符串进行编码。首先看下面这条语句:
Response.Write("<center><b>ASP.NET</b></center>")
其作用是在浏览器中局中并加粗显示“ASP.NET”。但是如果我们需要将“<center><b>ASP.NET</b></center>”作为一个完整的字符串显示在浏览器中,则通过HtmlEncode方法可以轻松的实现,如:
Response.Write("Server.HtmlEncode(<center><b>ASP.NET</b></center>)")
事实上,经过HtmlEncode编码后,字符串已经转换为:
<center&rt;<b&rt;ASP.NET</b&rt;</center&rt;
HtmlDecode方法的作用与HtmlEncode方法的作用相反,它将HTML编码的代码进行解码,恢复代码的本来面目。
四、
Application对象对应于ASP.NET中的HttpApplicationState类,它主要用来在整个应用程序中共享信息。Application对象可以直接在应用程序状态中存储变量和对象,这些变量和对象在整个应用程序执行的所有ASP.NET页面中都是可用的,其值也相同。例如,我们用的最多的保存页面的访问计数即可通过Application对象实现。
Application对象的相关属性和方法如下:
Allkeys属性 获取应用程序状态集合中的对象键
Contents属性 获取应用程序状态集合的对象引用
Count属性 获取所含对象的总数
StaticObjects属性 获取以<boject>标记的且其范围设置为Application的所有对象
Add方法 添加一个对象到应用程序状态集合中
Lock方法 锁定应用程序状态对象以保证并发访问
UnLock方法 取消锁定
Clear方法 从应用程序状态集合中移除所有对象
Remove方法 从应用程序状态集合中移除指定对象
RemoveAll方法 从应用程序状态集合中移除所有对象
五、
Session对象
Session对象对应于HttpSessionState类,它主要用于保存与当前用户会话相关的信息。与Application对象不同的是,Session对象与用户相关联。对于同一个用户,在应用程序内不同的页面访问同一个Session变量,其值相同;而不同的用户拥有不同的Session变量,其内容不同。对于每一个Session对象,都有一个SessionID来唯一标识它。
Session对象的相关属性和方法如下:
SessionID属性 用于表示会话的标识ID
Count属性 当前会话状态包含的项数
Mode属性 获取当前会话的模式
TimeOut属性 会话状态的过期时间,以分钟为单位
Abandon属性 取消当前会话
Clear方法 清除当前会话中的所有值
RemoveAll方法 清除当前会话中的所有值
Remove方法 清除当前会话中的指定值
六、
Cookie对象
Cookie对象对应于HttpCookie类,它主要用来在用户的浏览器上存储小块儿的信息,同时也可用来处理与当前用户会话有关的信息。
Cookie对象的相关属性和方法如下:
Name属性 用于获取Cookie的名字
Value属性 用于设置或获取Cookie的值
Domain属性 用于设置或获取与Cookie相关的域,默认为接收到该Cookie的主机
Expires属性 用于设置或获取Cookie的过期时间
Values属性 用于获取字典Cookie的键值
HasKeys属性 用于判断是否包含键,即是否为字典Cookie
Path属性 用于获取或设置与当前Cookie一起传输的虚拟路径,通常保留其默认值
Secure属性 表示Cookie是否通过保密传输,默认为False
Cookie对象可以分为两种类型,即会话Cookie(SessionCookie)和持久性Cookie,前者是临时的Cookie,一旦会话状态结束便会自动的消失;后者则具有确定的过期时间。一般来说,持久性Cookie在用户的计算机上都是以文本文件的形似存储的
Request
UrlReferrer | Uri | 获取用户由哪个url跳转到当前页面 |