Request派生自HttpRequest类,他的主要作用是从客户端获取信息,包括浏览器的种类,用户输入表单的数据以及Cookies中的数据和客户端认证等。Response同样派生自HttpRequest类,它主要用于回应客户端,告诉浏览器回应内容的报头,服务器端的信息以及输出指定的内容。另外Response的另外一个作用在于对Request属性的返回值进行分类处理。下面我们就对这对神仙眷侣做进一步分析。
Request的各种属性:
属性 | 属性说明 |
ServerVariables[“url”] | 当前网页的虚拟路径 |
RawUrl | 当前网页的虚拟路径(同上一样) |
ServertVariables[“path_translated”] | 当前网页的实际路径 |
PhysicalPath | 当前网页的实际路径(同上一样) |
ServerVariables[“server_name”] | 获取服务器名 |
UserHostAddress | 获取远程客户端的IP主机地址 |
UserHostName | 获取远程客户端的DNS名称 |
Browser.BackgroundSounds | 浏览器是否支持背景音乐 |
Brower.Frames | 浏览器是否支持框架 |
Browser.Platform | 客户用的什么系统 |
其中ServerVariables为Web服务器变量的集合,根据其后所给出的参数确定具体返回集合中的哪个值。
Response的各种属性:
方法(属性) | 方法(属性)说明 |
Response.Clear() | 删除所有存在缓冲区里的HTML输出,但是只删除预备输出的那些,不删除Response头信息。 |
Response.ClearHeaders() | 这个只删除头信息 |
Response.flush() | 立即将缓冲输出去 |
Response.End() | 将当前缓冲内容立即输出,并停止当前页的执行 |
Response.ClearContent() | 全部删除 |
Response.Redirect() | 重定向(即跳转至参数URL的页面)页面 |
ContentType | 主要描述内容类型的字符串,其格式为type/subtype,前者表示内容分类,后者表示特定内容类型。可以设置或者获取数据类型。 |
Expires | 获取或者设置页面过期的时间,如果设置该值为5,那么在打开网页的5分钟内再次访问这个页面,该页面都是从缓存中取出的,5分钟后再次访问这个页面,则该页面是从服务器重新下载的,设置的值的单位为分钟 |
ExpiresAbsolute | 该属性设置的目的是与asp兼容,它用来设置缓存移除的绝对时间.例如 Reponse.ExpiresAbsolute=DataTime.Now.AddHours(8)表示设置移除时间为当前时间加上8小时,也就是8小时后失效.后面是一个时间格式,如果不指定,则缓存在午夜后消失。 |
Buffer | 设置或获取当前页是否缓冲输出,默认为true |
设置缓冲与不设置缓冲的区别:
如果设置允许缓冲,当请求的页面中存在很多的内容的时候,内容会下载一点输出一点,而如果设置不允许缓冲的话,页面中的内容会在全部下载完成之后才一次性全部输出.另外在此还要说明一下flush方法和end方法的区别,flush方法是将缓存内容输出,然后继续下载页面内容进行缓冲,而end方法则是将缓存内容输出后,放弃余下的页面内容,即输出缓存内容后不再进行缓冲。