.Net的内置对象之一 Request

 一、Request简介

    Request对象是.net的内置对象之一,也是.net中常用的对象,用于获取客户端的信息,可以使用Request对象访问任何基于HTTP请求传递的所有信息。通过Request对象能够获得客户端发送给服务器的信息,不能将服务器端的数据发送给客户端的浏览器。

二、Request对象的作用

    对于.net的内置对象之一Request,我将其在应用程序中所发挥的作用分为两种,第一种是通过Request对象,可以在服务器端获取当前访问该服务器的客户端(浏览器)的一些数据信息,第二种是在服务器端可以获取从html表单中用post或get方法传递的参数,当然也包括使用Ajax的post和get方法传递的参数。接下来我将结合实例对这两种作用进行一一概述。

通过Request,在服务器端获取客户端(浏览器)的数据信息

Request.UserHostAddress;       获取客户端的主机IP地址

Request.UserHostName;      获取客户端的DNS名称

Request.Url.Authority;       获取DNS主机名或IP和端口号            ------>localhost:4035

Request.RawUrl:           获取客户端请求的URL信息(不包括主机和端口)  ------>/a/Default2.aspx 
Request.ApplicationPath:      获取服务器上ASP.NET应用程序的虚拟路径。    ------>/ 
Request.CurrentExecutionFilePath: 获取当前请求的虚拟路径。            ------>/Default2.aspx 
Request.Path:            获取当前请求的虚拟路径。            ------>/Default2.aspx 
Request.PathInfo:          取具有URL扩展名的资源的附加路径信息      ------> Http://so.com/page.html/tail,则值为 /tail
Request.PhysicalPath:        获取与请求的URL相对应的物理文件系统路径。   ------>E: empDefault2.aspx 

Request.Url :             获取完整url(协议名+域名+站点名+文件名+参数) ------>http://www.baidu.com/a/b?c=1  

Request.Url.Host :         获取域名 (不包含端口)             ------>www.baidu.com 

Request.Url.Query :         获取参数(从?开始)              ------> ?a=1&b=2
Request.Url.LocalPath:       站点名+文件名                 ------>/Default2.aspx 
Request.Url.AbsoluteUri:      获取基本url(不包含参数)            ------>http://localhost:8080/Default2.aspx 
Request.Url.AbsolutePath:     站点名+文件名                 ----->/Default2.aspx  

在使用Request时需要注意的是,比如想在另一个类库中获取当前request的信息,那么就需要将该Request通过参数传递到该类库中的某一个方法中,接收该参数的类型需使用HttpRequestBase。

参考文章:

http://www.cnblogs.com/190196539/archive/2011/12/13/2286072.html

http://blog.csdn.net/nc_star/article/details/51741007

原文地址:https://www.cnblogs.com/xcsn/p/5615126.html