【ASP.NET】巧用Cookie实战

 

     上篇介绍了究竟什么是Cookie。究竟是干什么用的,这篇博客具体具体的说一下。Cookie究竟怎样用。

首先建立如图所看到的的界面。通过该界面可登录到某个站点。详细要求例如以下:

     ·在首次登录后,将登录信息写入到用户计算机的Cookie中;
     ·当再次登录时。将用户计算机中的Cookie信息读出并显示。以备用户选择使用;
     ·能够利用读出Cookie中的信息来直接登录站点。


    



 操作步骤


1、在VS新建一个的空白的asp.net应用程序。在项目管理器中。加入一个Web窗口;使用一个2行3列的表格进行布局;布局结束后。将2个Label控件分别置于布局表格的左側,分别将其Text属性设置为username和password,在布局表格中加入两个TextBox控件、一个Button控件和一个CheckBox控件。将Button控件的Text属性设置为“登录”。将CheckBox控件的Text属性设置为“记住username和password”。



2、加入一个HTML页面


    将默认将名称改为login.html


3、编写事件处理代码


<span style="font-family:KaiTi_GB2312;font-size:18px;">protected void Button1_Click(object sender, EventArgs e)
        {

            if (CheckBox1.Checked)
            {
                Response.Cookies["ID"].Expires = new DateTime(2016, 2, 24); //用键名为ID的Cookie设置生存时间
                Response.Cookies["PW"].Expires = new DateTime(2016, 2, 24);
                Response.Cookies["ID"].Value = TextBox1.Text; //将键名为ID的Cookie的值设置为文本框内容
                Response.Cookies["PW"].Value = TextBox2.Text;
            }
            Response.Redirect("Login.html"); 

        }</span>

首先推断该页面定义的Cookie是否为空。若不为空则将Cookie中的内容读出并置于TextBox1和TextBox2两个文本框中。这样用户在自己机器上第二次登录同一个页面时,直接单击【登录】button就可以,省掉了再次输入用户ID和password的过程


<span style="font-family:KaiTi_GB2312;font-size:18px;"> protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.Cookies["ID"] != null && Request.Cookies["PW"] != null)
            {
                TextBox1.Text = Request.Cookies["ID"].Value.ToString();
                TextBox2.Text = Request.Cookies["PW"].Value.ToString();//将键名为ID的Cookie的值读出,并在文本框TextBox2中显示出来
            }

        }</span>

当再次载入页面的时候就会出现例如以下图所看到的。





上面仅仅是简单的展示了几个比較常见的功能(保留用户个人信息。如姓名、password等,帮助用户高速登录网页),还有非常多未知的功能让我们去探索

 比如:

      ·保存用户的个人爱好,设计者可依据Cookie中记录的用户爱好来设置站点的风格;

      ·进行在线购物时。记录用户购买的商品信息;

      ·记录弹出窗体被弹出的状况。一些页面被打开时会弹出通知或广告窗体,能够使用Cookie记录窗体被弹出的情况。了解弹出窗体是否被弹出过。若被弹出过。再次打开页面时就不再弹出该弹出窗体。


 学习心得:

      通过敲这个样例让我更加深入的了解了Cookie是怎样用的,曾经看到这这样的类似的文章都躲着不看,感觉肯定难得不行,可是自己尝试后才知道,事实上一点都不难,所以学习一定不要怕困难,以上仅仅是鄙人的偏见,有什么意见,或者写的有错误的地方,希望大家帮着看着点。

  

原文地址:https://www.cnblogs.com/tlnshuju/p/7205070.html