目录:

      ●  介绍

      ●  Cookies是什么

      ●  Cookies是如何开始的

      ●  Cookies的优势

      ●  Cookies的劣势

      ●  如何创建Cookies

      ●  如何从Cookies中读取数据

      ●  持久化和非持久化的Cookies

      ●  如何使Cookies持久化

      ●  Cookies保存在本地硬盘的什么位置

      ●  如何在过期之前移除持久化的Cookies

介绍:

      这个介绍呢,也稍微介绍一下鄙人啊,哈哈!以前在博客园上发布都是记录一些工作中遇到的问题,以及解决方法,说是记录,还不如说是记下来以后方便再次碰到解决问题,没有一点延续性和连贯性,我相信看到的人也是看个大概。作为一个标准的程序猿,我们应该从自身提高,So,这次通过查资料和自己Coding,算是对Cookies这个非常常见和基础的知识点有了一点自己的认识,贴出来,和大家一起学习,共同进步啊!各位有什么意见和建议,欢迎反馈!

Cookies是什么:

       Cookies是一个很小的文件,它被创建在客户端系统和客户端浏览器内存中,它被用户做状态管理。当我们需要的时候,我们可以存储一些小的信息在客户端系统中。Cookies是存储的是纯文本的txt格式,如果Web应用程序需要用Cookies,服务器将发送一个Cookies到客户端浏览器中,并存储起来。当下一次页面被访问的时候,客户端浏览器将发送该Cookies到服务器。最常见的使用Cookie是的例子是存储用户信息、用户的偏好设置、被保存记住的密码等等。Cookie是有一些有一些优势和劣势,我将在下面的文章中说道,但是首先,我们来看一下Cookies是如何开始的。

 Cookies是如何开始的:

        当客户端请求服务器的时候,服务器发送一个Cookie是到客户端,在下一次的请求中,同样的Cookie是被再次使用。例如:

        Cookie1

        当我们在浏览器中访问www.codeproject.com的时候,该地址的服务器段将生成一个包含有Session  ID的Cookies,并将该Cookie是相应请求,返回给客户端。

        Cookie2

        当客户端再次访问该网址的时候,将依然使用该Cookies和Session  ID。客户端浏览器和服务器段通过Cookies来交换信息。不同的网址,浏览器保存的Cookie是是不同的。当URL被点击的时候,如何页面需要从Cookie是处得到信息,它将去客户端本地的磁盘中找,并将Cookies中的信息发送给客户端。

Cookies的优势:

       下面列出了在Web应用程序中Cookies的主要的优点:

               ●  使用和执行非常的简单

               ●  本地浏览器保存数据

               ●  不同的网址,浏览器将自动区分它们

Cookies的劣势:

       下面列出了在Web应用程序中Cookies的主要的优点:

               ●  保存的格式是最简单的纯文本txt格式,一点也不安全

               ●  Cookies保存的数据大小有限制(4096 bytes / 4KB)

               ●  Cookie是被保存的最大的数目也有限制,大部分浏览器只能保存20个,如果有新的Cookies,旧的Cookies将被替换。     

               ●  如何用户设置浏览器为高安全模式,Cookie是将不能工作;(具体怎么设置,我在下面的文章中有介绍)           

如何创建Cookies:

      创建Cookies需要引入命名空间System.Web

           using System.Web;

     创建Cookies并将它添加到一个Web响应中

            Cookie4

     Cookies将一直存在直到浏览器关闭,如何能让Cookies关闭浏览器还存在呢,我下面文章有介绍!

如何从Cookies中读取数据:

    在读取Cookie之前,检查Cookies是否存在是一个好的习惯。因为浏览器可能将Cookies关闭。

         Cookie7

持久化和非持久化的Cookies:

     Cookies的类型可以分成两种:

            ●  持久化的Cookies

            ●  非持久化的Cookies

     持久化的Cookies:它被保存在本地的硬盘中直到过期,持久化Cookies应该设置过期时间。它们被保存在本地,直到用户删除它。  

     持久化的Cookies:它们也被称为临时Cookies。如果它不设置过期时间的话,它将被存储在浏览器的内存中。

So,持久化Cookies和非持久化Cookies之间不同的地方就是持久化Cookies设置了过期时间,而非持久化没有设置,为默认过期时间。

如何使Cookies持久化:

    要是Cookies持久化,就要增加Cookies的过期时间。

  //Creting a Cookie Object
  HttpCookie _userInfoCookies = new HttpCookie("UserInfo");

  //Setting values inside it
  _userInfoCookies["UserName"] = "Abhijit";
  _userInfoCookies["UserColor"] = "Red";
  _userInfoCookies["Expire"] = "5 Days";

  //Adding Expire Time of cookies
  _userInfoCookies.Expires = DateTime.Now.AddDays(5);

  //Adding cookies to current web response
  Response.Cookies.Add(_userInfoCookies);
Cookies保存在本地硬盘的什么位置:
首先打开"文件夹选项”—"查看"--勾选"显示隐藏的文件、文件夹和驱动器”;
位置:“C:\Users\当前用户的名称\AppData\Local\Microsoft\Windows\Temporary Internet Files”
如何在过期之前移除持久化的Cookies:
HttpCookie _userInfoCookies = new HttpCookie("UserInfo");
//Adding Expire Time of cookies before existing cookies time
_userInfoCookies.Expires = DateTime.Now.AddDays(-1);
//Adding cookies to current web response
Response.Cookies.Add(_userInfoCookies);
OK!先到这里吧,各位有什么意见和建议,欢迎留言和拍砖!(*^__^*) 嘻嘻……

 

posted on 2013-03-29 13:11  lin714115  阅读(214)  评论(0编辑  收藏  举报