【踩坑及思考】浏览器存储 cookie 最大值超过 4kb,或 http 头 cookie 超过限制值

背景

  1. 本地生产环境:超过最大值 cookie token 不存储;
  2. 客户生产环境:打开系统空白,且控制台报 http 400 错误;

出现了两种现象

导致用户名密码登录,且提示成功后,又返回到登录页。

注意:也有 cookie 值被截取现象,但我目前没遇到,使用 Google Chrome v118。此处不说明;

原因

  • 虽然登录成功,但 cookie 没有存储 token

  • 跳转路由要先验证 token 是否存在,以此判断用户是否登录;

  • token 就跳回登录页,以此反复进入死循环;

解决

  • 服务接口生成 token 时,限制其长度;

导致打开系统,页面空白,且控制台报 http 400 错误;

原因

  • 系统存在多个 cookie 值存时,会合并到 http 请求头 cookie ,并发送给服务器;
  • 此时服务器(如:nginx) 接收的请求 cookie 超出最大限制,返回 http 400 错误;

解决

  • 注意每次 cookie 的值不要太大;
  • 限制 cookie 个数,或使用 localStorage

参考

此篇第三章有详细说明:https://blog.csdn.net/linzhiqiang0316/article/details/129720285

Cookie 和 Storage 区别说明,参考此篇https://www.cnblogs.com/lianghong/p/8520490.html

相关推荐
打码人的日常分享1 小时前
数据中心信息中心信息科管理制度
大数据·运维·网络·云计算·制造
一路往蓝-Anbo3 小时前
第 12 章:Linux 侧 RPMsg 用户态驱动与数据接口
linux·运维·服务器·stm32·单片机·嵌入式硬件·网络协议
却尘3 小时前
一个 ERR_SSL_PROTOCOL_ERROR 让我们排查了三层问题,最后发现根本不是 SSL 的锅
前端·后端·网络协议
宁雨桥4 小时前
详解Web服务部署:IP+端口 vs IP+端口+目录 实战指南
前端·网络协议·tcp/ip
mftang4 小时前
WebSocket协议与其他通信协议有什么区别?
网络·websocket·网络协议
funnycoffee1235 小时前
H3C交换机查看日志命令display logbuffer
运维·网络·h3c logbuffer·h3c日志
小灰灰搞电子5 小时前
ESP32 使用ESP-IDF实现Modbus TCP主机通信源码分享
网络·modbustcp·网络协议·tcp/ip·esp32
qq_479875435 小时前
netlink(1)
linux·服务器·网络
王da魔5 小时前
Keepalived
网络·云原生
hzulwy5 小时前
Linux网络配置与测试
linux·运维·网络