会话管理session和Cookie
会话管理作用:一种记忆访问用户的方式(为了识别用户 不必再次发送请求)
session
session是用户第一次访问用户时,服务器创建的对象并分配唯一性的sessionID,创建之后将sessionID通过Cookie返回给用户所在浏览器,用户再次访问时直接将sessionID发送过去服务器验证登陆凭证就可以。
可能会遇到的问题有:用户同时在线量过多,占内存量太大. 还有就是如果有多台服务器,他们怎么做sessionID共享(无法同步验证sessionID)。多个应用要共享session时,还会遇到跨域的问题。
运作方式为,发送请求访问——判断有无sessionID——有就跳原有界面,无就跳默认界面
session和Cookie的最大区别就是 前者存在于服务器端,后者则存在客户端
Cookie
cookie是由HTTP服务器设置的,
Cookie的信息保留在浏览器中,
(1)用户发起登录请求,服务端根据用户账户密码或其他身份信息,
(2)服务端验证用户是否满足登陆条件,如果满足,就根据用户信息创建一个登陆凭证。
(3)服务端把上一步创建好的登陆凭证,先怼他进行数字签名,用对晨光加密算法加密
(4)将签名,加密后的字符串,写入Cookie.cookie名字必须固定。
(5) 用户登陆后发起后续请求,服务端根据上一步存登陆凭证的cookie名字,获取到相关的cookie值。
运作方式:验证身份——将登陆凭证(数字签名,对称加密)写到cookie(里面含有cookie的唯一签名)返回给客户端——收到之后将name做解密和签名认证后,拿到其中的登陆凭证,判断其有效性。
cookie的相关问题:实现了服务端无状态化,cookie有大小限制,储存不了太多数据

浙公网安备 33010602011771号