【踩坑及思考】浏览器存储 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

相关推荐
可乐鸡翅yeah_34 分钟前
hls.js 手动自定义 http 请求 loader,修改请求头实战
开发语言·前端·javascript·网络协议·http·ecmascript·m3u8在线
星夜夏空991 小时前
网络编程(5)—— Reactor实现(v4)
网络
pt10433 小时前
CML网络仿真入门-2:使用CML模拟网络实验环境
运维·网络协议
rest10243 小时前
用io_uring进行io测试
网络
恒拓高科WorkPlus3 小时前
企业怎样选择IM即时通讯平台?私有化部署还是SaaS更适合?
网络·github
修船大队长4 小时前
配置接受报文每个报文对应一个mailbox配置流程记录
网络·单片机·mcu
一遍再一遍5 小时前
【LTE Attach流程】
网络
星夜夏空995 小时前
网络编程(5)—— Reactor实现(v3)
服务器·网络·php
枫叶丹45 小时前
从一次推理请求出发:模型、显存、网络与服务系统如何共同决定性能
网络·人工智能·chatgpt·开源·agent·codex
恒拓高科WorkPlus6 小时前
制造企业出现生产异常后,如何通过IM快速通知责任人?
网络·制造