美文网首页
Session与Cookie的区别(学习笔记一)

Session与Cookie的区别(学习笔记一)

作者: 一点意 | 来源:发表于2019-01-30 17:09 被阅读0次

    一、存储位置不同

    1.Cookie的数据信息存放在客户端浏览器上。

    2.Session的数据信息存放在服务器上。

    二、存储容量不同

    1.单个Cookie保存的数据<=4kb,一个站点最多保存20个Cookie。

    2.对于Session并没有上限,但出于对服务器端的性能考虑,Session内不能存放过多的东西,并且设置Session删除机制。

    三、存取方式的不同

    1.Cookie中只能保管ASCII,需要通过编码的方式存取Unicode字符或者二进制数据。运用Cookie难以实现存储略微复杂的信息。

    2.Session中能够存取任何类型的数据,包括不限于String、Integer、List、Map等

    四、隐私策略的不同

    1.Cookie对客户端是可见的,别有用心的人可以分析c存放在本地的Cookie并进行Cookie欺骗。所有他不是安全的。

    2.Session存储在服务器上,对客户端是透明的,不能存在敏感信息泄露的风险。

    如果选用Cookie,比较好的方法是:敏感的信息,如账号密码等,尽量不要写到Cookie中。可以将Cookie信息加密。提交到服务器后再进行解密。存储本地的Cookie就不需要自行加密。

    五、有效期上的不同

    1.开发可以设置Cook的属性,达到使Cookie长期有效的效果。

    2.由于Session依赖于名为jsessionid的Cookie,而Cookie jsessionid的过期时间默认为-1,只需关闭窗口该Session就会失败,因而session不能达到长期有效的效果。就算不依赖于Cookie,运用URL地址重写也不能完成,假如设置session的超时时间过长,服务器累计的session就会越多,越容易导致内存溢出。

    六、服务器压力的不同

    1.Session是保管在服务器端的,每个用户都会产生一个Session。假如并发访问的用户十分多,会产生十分多的session,耗费大量的内存。

    2.Cookie保管在客户端,不占用服务器资源。对于并发用户十分多的网站,Cookie是很好的选择。

    七、浏览器支持的不同g

    如果客 户端不支持Cookie

    1.cookie是需要客户端浏览器支持的。假如客户端禁用了Cookie,或者不支持Cookie,则会话跟踪失效。关于wap上的应用,常规cookie就没有用了。

    2.运用session只能在本窗口内有效。假如两个浏览器窗口互不相干,他们将运用两个不同的Session。(IE8不同窗口session想干)

    八、跨域支持上的不同

    1.Cookie支持跨域名访问,例如domain属性设置为“.51testing.com”,则以“.51testing.com”为后缀的一切域名均能够访问该cookie。

    2.session不会支持跨域名访问。session仅在它所在的域名内有效。

    相关文章

      网友评论

          本文标题:Session与Cookie的区别(学习笔记一)

          本文链接:https://www.haomeiwen.com/subject/ptecsqtx.html