cookie 和 session 的区别

67 阅读1分钟
 cookiesession
存储位置cookie的数据信息存放在客户端浏览器上session的数据信息存放在服务器上
存储容量单个cookie保存的数据<=4KB,一个站点最多保存20个Cookie对于session来说并没有上限,但出于对服务器端的性能考虑,session内不要存放过多的东西,并且设置session删除机制
存储方式cookie中只能保管ASCII字符串,并需要通过编码方式存储为Unicode字符或者二进制数据session中能够存储任何类型的数据,包括且不限于string,integer,list,map等
隐私策略cookie对客户端是可见的,别有用心的人可以分析存放在本地的cookie并进行cookie欺骗,所以它是不安全的session存储在服务器上,对客户端是透明对,不存在敏感信息泄漏的风险
有效期上开发可以通过设置cookie的属性,达到使cookie长期有效的效果session依赖于名为JSESSIONID的cookie,而cookie JSESSIONID的过期时间默认为-1,只需关闭窗口该session就会失效,因而session不能达到长期有效的效果
 浏览器支持cookie既能够设为本浏览器窗口以及子窗口内有效,也能够设为一切窗口内有效session只能在本窗口以及子窗口内有效
跨域支持cookie支持跨域名访问session不支持跨域名访问