Request对象用于封装客户端请求信息,检索浏览器向服务器发送的消息。

Request对象常用属性或方法:

属性或方法 描述
ApplicationPath 获取ASP.NET应用程序的虚拟应用程序在服务器上的根路径。
Browser 提供关于客户端浏览器的功能的信息。
ClientCertificate 客户端证书中的字段用来表明用户身份。
FilePath 提示当前请求的虚拟路径。
Cookies 用来获取发送到客户端的Cookies集合。
Headers 获取HTTP首部的集合。
HttpMethod 指明由客户端使用的HTTP数据传输的方法(GET、POST)。
QueryString 查询字符串的集合。
ContentEncoding 所请求对象的编码。
Path 请求中的虚拟路径。
Params 取得元素提交的值。
ServerVariables 检索服务器环境变量。
Form 请求中表格变量的值。
TotalBytes 请求中所发送的字节数。
Item 从结合中获取某些特定的对象。
UserLanguages 获取用户使用区域语言的列表。
UserHostName 获取用户计算机的DNS名称。
UserHostAddress 获取用户主机的IP地址。
Url 获取当前页面的网址。
RawUrl 获取当前请求的原始URL。
RequestType 指明由客户端使用的HTTP数据传输的方法(GET、POST)。
PhysicalPath 获取当前页面在服务器端的物理路径。
PhysicalApplicationPath 获取该站点在服务器端的物理路径。
Browser 获取客户端浏览器的信息。
BinaryRead() 检索POST请求的数据。
MapPath() 将URL的虚拟路径与服务器中的物理路径进行映射。
SaveAs() 将请求保存到当地硬盘中。

1. 获取页面间传送的值

(1)方法一:Request[关键字]

这种方法是直接获取客户端提交的数据,获得的是通过GET方法传递的数据。

(2)方法二:Request.Params[关键字]

(3)方法三:Request.QueryString[关键字]

QueryString可用于获取客户端通过GET传送的数据。

例如:

地址为:http://dengzhr.com?name=deng&sex=female,

可用Request.QueryString["name"]和Request.QueryString["sex"]来获得相应的值;

也可用Request["name"]和Request["sex"]来获取;

还可以用Request.Params["name"]和Request.Params["sex"]来获取。

2. 获取客户端浏览器信息

HttpBrowserCapabilities b = Request.Browser;

Response.Write("客户端浏览器信息:<hr />");
Response.Write("类型:" + b.Type + "<br />");
Response.Write("名称:" + b.Browser + "<br />");
Response.Write("版本:" + b.Version + "<br />");
Response.Write("操作平台:" + b.Platform + "<br />");
Response.Write("是否支持框架:" + b.Frames + "<br />");
Response.Write("是否支持表格:" + b.Tables + "<br />");
Response.Write("是否支持Cookies:" + b.Cookies + "<br />");

3. 获取客户端的IP地址和MAC地址

Response.Write("IP地址:" + Request.UserHostAddress + "<br />");
Response.Write("MAC地址:" + Request.ServerVariables["REMOTE_ADDR"]);

4. 获取当前页面路径

Response.Write("当前路径为:" + Request.CurrentExecutionFilePath);

5. 访问传入的表单数据

HttpRequest对象的Form和QueryString属性允许使用“名称/值”的方式检查传入的表单数据。如果使用HTTP GET提交数据,则使用QueryString属性范围表单数据;有HTTP POST提交的数据将使用Form属性获得。

譬如:

// 获取前台name属性我为formName的值
string formName = Request.Form("formName");
本文作者:子匠_Zijor,转载请注明出处:http://www.dengzhr.com/others/backend/csharp/645