网络安全-Day19-Cookie与Session的区别

一、Cookie与Session的区别

1、存储位置不同

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

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

2、存储容量不同

单个Cookie保存的数据<= 4KB,一个站点最多保存20个Cookie

对于Session来说并没存储上限(出于对服务器性能考虑,Session内不要存太多东西,并建立Session删除机制)

3、存储方式不同

Cookie中只能保管ASSII字符串,并需要通过编码方式存储Unicode字符或者二进制数据。

Session中能够存储任何类型的数据,包括且不限于string、integer、list、map等。

4、安全性不同

Cookie对于客户端是可见的,可以分析存放在本地的Cookie并进行Cookie欺骗,所有不安全。

Session存储在服务器,对服务端透明,不存在敏感信息泄露的风险。

5、有效期不同

开发可以通过设置Cookie的属性,控制Cookie的有效期。

只要关闭窗口Session就会消失,因而Session不能达到长期有效的效果。

6、适用场景不同

Cookie保存在客户端,不占用服务器资源。对高并发量的网站,Cookie是很好的选择。

Session保存在服务端,每个用户都会产生一个Session,对于并发不高的网站,Session是很好的选择。(如果并发量高,会耗费服务器大量的内存)

7、浏览器支持不同

例如客户端浏览器不支持Cookie:

    Cookie是需要浏览器支持的,假如客户禁用了Cookie或不支持等,常规的Cookie就派不上用场。

    运用session需要使用URL地址重写的方式。一切用到session程序的URL都要进行URL地址重写,否则session会话跟踪还会失效。

注:URL地址重写介绍,https://www.jianshu.com/p/8e3a1bfe0533

假如客户端支持cookie:

    cookie既能够设为本浏览器窗口以及子窗口内有效,也能够设为一切窗口内有效。

    session只能在本窗口以及子窗口内有效。

8、跨域支持不同

Cookie支持跨域名访问。

Session不支持跨域名访问。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容