前端开发,你知道cookie的弊端吗

    作者:课课家教育更新于: 2017-02-23 18:01:58

    Web开发

      有在网页中花过时间的用户或者都会知道关于网站中的cookie它的作用是什么“Cookie”是小量信息,由网络服务器发送出来以存储在网络浏览器上,从而下次这位独一无二的访客又回到该网络服务器时,可从该浏览器读回此信息。这是比较有作用的,让浏览器记住这位访客的特定信息,比如上次访问的位置、花费的时间或用户首选项(比如样式表)是经常见的。

      Cookie实际上是个存储在浏览器目录的文本文件,当浏览器正在运行的时候,存储在RAM中,当你从该网站或网络服务器退出,Cookie也将会是可存储在计算机的硬驱上,当访客结束其浏览器对话时,最终也是即终止的所有Cookie。

    前端开发,你知道cookie的弊端吗_前端开发_cookie_web开发_课课家

      会发现cookie虽然在持久保存客户端数据提供了方便,分担了服务器存储的负担,但还是有很多局限性的。

      第一:在每个特定的域名下最多生成20个cookie

      1.如果是IE6或更低版本最多20个cookie

      2.那么IE7和之后的版本最后可以有50个cookie。

      3.而使用Firefox它最多50个cookie。

      4.chrome和Safari是没有一个硬性的要求。

      需要知道的是IE它是提供了一种存储可以持久化用户数据,叫做userdata,从IE5.0就开始支持。每个数据最多128K,但是每个域名下最多1M。这个持久化数据放在缓存中,当缓存没有清理的话,那么它将会是一直存在的。

      cookie优点:拥有极高的扩展性和可用性

      1.可以是通过一个良好的编程,然后是控制保存在cookie中的session对象的大小。

      2.它是通过加密和安全传输技术(SSL),最后是减少cookie被破解的可能性。

      3.只在cookie中存放不敏感数据,如果是被盗也没有太大的一个损失

      4.是可以控制cookie的生命期,使它不会永远的有效,一般让偷盗者很可能拿到一个过期的cookie也是有一定的可能的。

      cookie它存在的缺点:

      1.Cookie数量和长度是有一定的限制,而每个domain它最多只能有20条cookie,每个cookie长度不能超过4KB,否则会被截掉,这点是要注意的。

      2.安全性的一个问题。如果cookie被拦截的话,那人就可以取得所有的session信息,即使加密也没有效果,因为一般的拦截者并不需要知道cookie的意义,他只要原样转发cookie也就是可以达到最终的目的了

      3.注意有些状态不能保存在客户端。比如为了防止重复提交的一个表单,是要在服务器端保存一个计数器。若计数器保存在客户端,它是没有什么好的一个作用。

      结语:cookie它的使用也是有一定的便捷性,在一定程度上是可以提升一个效率,方便用户再次的浏览花费的较少的一个时间,缺点是被盗之后存在一定的安全隐患也是不可避免的。

课课家教育

未登录