Request
对象
用于获取从浏览器向服务器发送的请求信息。客户端—>服务器。提供对请求当前页的信息访问,包括标题、Cookie、客户端证书、查询字符串等。
Request
对象常用属性
QueryString
属性:用于获取客户端以GET
方式传递的参数数据。Form
属性:用于获取客户端以POST
方式传递的参数数据或表单数据。Cookies
属性:获取客户端发送的Cookie
信息。Browser
属性:获取客户端浏览器信息。
Request
对象获取页面间的传值
页面跳转的时候可以传递过来用户的自定义参数,在获取这些参数数据时有多种方式可以选择。
下面通过一个例子来说明一下最常用的几种获取页面间传值的方式:
1、新建一个asp.net项目,然后在首界面添加一个button
按钮,并且把他的Text属性设置为“跳转”,接着双击这个按钮,在对应aspx.cs
文件内会出现相应的响应点击方法。或者可以通过加标签的方式添加一个button
标签。
2、新建一个Web窗体
,命名为:Request.aspx
,在上述的标签的Click时间中,添加一个重定向页面语句:
protected void btnRedirect_Click(object sender, EventArgs e)
{
Response.Redirect("Request.aspx?value=获得页面间的传值");
}
3、然后在Request.aspx
页面的初始化事件中,用三种不同的获取传值的方式把传值显示到新的页面上:
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("使用Request[string key]方法 " + Request["value"] + "<br>");
Response.Write("使用Request.Params[string key]方法 " + Request.Params["value"] + "<br>");
Response.Write("使用Request.QueryString[string key]方法 " + Request.QueryString["value"] + "<br>");
}
效果:
值得一提的是:
Request
方式:直接以对象索引的方式获取参数值,不受POST
或GET
方式影响。
Request.QueryString
方式:在客户端使用GET
方式进行提交时可以使用此方式获取。高效
Request.Form
方式:在客户端使用POST
方式进行提交时可以使用此方式进行获取。高效
Request.Params
方式:该方式属于多种获取数据的一个集合,包括Cookie
,此方式同样不受POST
和GET
方式影响。
Request
对象获取客户端信息
Request
对象可以获取客户端的平台信息、IP等信息,好让我们判断我们的页面是否兼容当前访问的设备或者浏览器版本。
在Request
对象中的Browser
属性对应的时关于浏览器的数据信息,在这个属性下又包含了很多属性。在某个页面的Page_Load
事件中定义HTTPBrowserCapabilities
类型的变量,用于获取Request
对象的Browser
属性的返回值,具体如下:
protected void Page_Load(object sender, EventArgs e)
{
HttpBrowserCapabilities b = Request.Browser;
Response.Write("客户端浏览器信息:<br>");
Response.Write("<hr>"); //输出横线标签
Response.Write("名称:" + b.Browser + "<br>"); //输出浏览器名称
Response.Write("类型:" + b.Type + "<br>"); //输出浏览器类型
Response.Write("版本:" + b.Version + "<br>"); //版本
Response.Write("操作平台:" + b.Platform + "<br>"); //操作平台
Response.Write("是否支持框架:" + b.Frames + "<br>"); //支持返回True
Response.Write("是否支持表格:" + b.Tables + "<br>"); //
Response.Write("是否支持Cookies:" + b.Cookies + "<br>");
Response.Write("<hr>");
}
效果: