今天遇到了一个问题,有个账号登陆后刷新变成未登陆,然后登陆信息丢失。
一、排查:
1、确认前端缓存形式是cookie
2、其他账号登陆userinfo的缓存是存在的
3、排查前端代码判断是否有问题,经排查代码逻辑是正常的
4、排查userinfo字节长度,经排查长度异常,由于配置了很多个角色,而且后端返回了很多无用字段,计算后发现长度远远大于4096
二、解决:
1、前端修改缓存方式
2、后端修改删减返回的不必要字段
cookie 的总数量没有限制,但是每个域名的COOKIE 数量和每个COOKIE 的大小是有
限制的!
IE 每个域名限制为50 个。
Firefox 每个域名cookie 限制为50 个。
Opera 每个域名cookie 限制为30 个。
Safari/webkit 貌似没有cookie 限制。但是假如cookie 很多,则会使header 大小超过服
务器的处理的限制,会导致错误发生。
不同浏览器间每个cookie 文件大小也不同
Firefox 和safari 是4097 个字节,包括名(name)、值(value)和等号。
Opera 是4096 个字节,包括:名(name)、值(value)和等号。
IE 是4095 个字节,包括:名(name)、值(value)和等号。
网友评论