Asp.net内置对象之Request对象(概述及应用)(3)


Response.Write(Request.ServerVariables["LOCAL_ADDR"]);//远端服务器的地址
Response.Write("<br>");
Response.Write(Request.ServerVariables["Remote_ADDR"]);//浏览器所在主机的IP地址
Response.Write("<br>");
Response.Write(Request.Browser.Type.ToString());//浏览器的类型
Response.Write("<br>");
Response.Write(Request.Browser.Platform.ToString());//浏览器所在的平台
Response.Write("<br>");
Response.Write(Request.ServerVariables["url"]);


4.取得客户端浏览器信息

通过Request对象的Browser属性得到。需要利用Browser属性生成一个HttpBrowserCapabilities类型的对象实例。HttpBrowserCapabilities类具有的常用属性如下:

Asp.net内置对象之Request对象(概述及应用)

复制代码 代码如下:


Response.Write("浏览器的类型是:" + Request.Browser.Browser.ToString()+"<br>");
Response.Write("浏览器的版本是:" + Request.Browser.Version.ToString()+"<br>");
Response.Write("浏览器的所在平台是:" + Request.Browser.Platform.ToString()+"<br>");
Response.Write("浏览器是否支持框架:" + Request.Browser.Frames.ToString()+"<br>");
Response.Write("浏览器是否支持Cookies:" + Request.Browser.Cookies.ToString()+"<br>");
Response.Write("浏览器是否支持Javascript:" + Request.Browser.JavaScript.ToString()+"<br>");


5.读取客户端Cookie

Cookie是在HTTP协议下服务器或脚本可以维护客户工作站上信息的一种方式。Cookie是由Web服务器保存在用户浏览器上的小文本文件,它可以包含有关用户的信息,这些信息以名/值对的形式储存在文本文件中。无论何时,只要用户连接接到服务器,Web站点就可以访问Cookie信息。Cookie保存在用户的Cookie文件中,当下一次用户返回时,仍然可以对它进行调用。

Cookies集合是由一些Cookie对象组成的。Cookie对象的类名为HttpCookie。HttpCookie类的主要属性如下:

Asp.net内置对象之Request对象(概述及应用)


使用Cookie时,应注意以下几点

[1].使用Cookie保存客户端浏览器请求服务器页面的请求信息时,保存时间的长短取决于Cookie对象的Expires属性,可以根据需要来设置。若未设置Cookie的失效日期,则它们仅保存到关闭浏览器为止。若将Cookie对象的Expires属性设置为DateTime.MaxValue,则表示Cookie永远不会过期。

[2].Cookie存储的数据量有所限制,大多数浏览器支持的最大容量为4096字节,因此不要用Cookie来保存大量数据。

[3].  并非所有浏览器都支持Cookie,并且数据是以明文形式保存在客户端计算机中,因此最好不要用Cookie来保存敏感的未加密数据。

[4].在ASP.NET中有两个Cookies集合,即:Response对象的Cookies集合和Request对象的Cookies集合,但两者的作用有所不同,通过前者可以将Cookie写入客户端,通过后者可以读取存储在客户端的Cookie。

如下操作:

Asp.net内置对象之Request对象(概述及应用)

示例如下:

复制代码 代码如下:

 
protected void Page_Load(object sender, EventArgs e)
{
HttpCookie c1=Request.Cookies["UserName"];
HttpCookie c2 = Request.Cookies["Password"];
if (c1 != null || c2 != null)
{
//当保存完Cookie之后(也就是说"保存或永久保存"),这个才能输出,当第二次用统一浏览器打开该网站的时候就会输出
Response.Write(c1.Value + "欢迎光临");
}
}
protected void Button1_Click(object sender, EventArgs e)
{
//提交
if (TextBox1.Text == "admin" && TextBox2.Text == "123")
{
Response.Write("欢迎光临"+TextBox1.Text);
Response.Cookies["UserName"].Value = TextBox1.Text;
Response.Cookies["Password"].Value = TextBox2.Text;
if (DropDownList1.SelectedItem.Text == "永久保存")
{
//默认cookies失效时间是直到关闭浏览器
//Cookie保存永久
Response.Cookies["UserName"].Expires = DateTime.MaxValue;
Response.Cookies["Password"].Expires = DateTime.MaxValue;
}
else
{
//Cookie永不保存
Response.Cookies["UserName"].Expires = DateTime.Now;
Response.Cookies["Password"].Expires = DateTime.Now;
}
}

}


当我们再次打开该网站(同一浏览器)的时候,就会弹出“admin欢迎光临"

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjdggd.html