会话控制是什么?
cookie和session都是跟踪整个会话过程的技术手段。而会话,就是用户通过浏览器和服务器的一次通话。
为什么要有会话控制?
因为HTTP协议是无状态的,服务器不知道用户上一次做了什么,这严重阻碍了交互式web应用程序的实现。HTTP不通过额外的手段,服务器并不知道用户做了什么,为了做到这一点,就需要使用cookie和session了。服务器可以设置或者读取cookie中包含信息,借此维护用户跟服务器会话中的状态。
session和cookie的区别?
存储位置,隐私策略和安全性,数据类型,有效期,服务器压力,浏览器支持,跨域支持,数据量
- cookie在客户端,session在服务器端
- cookie在本地,可以随便修改,session更安全
- cookie只支持ascII字符串,需要解码。session支持所有的数据类型。
- cookie存在本地,可以永久有效。而session在服务器上,设置永久有效之后,服务器上session会不断累积,会导致内存溢出。
- session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,如果主要考虑到减轻服务器性能方面,应当使用cookie。
- cookie需要浏览器支持,session不支持。
- cookie支持跨域,session不支持跨域。
- 存储量不同。
未完待续