当前位置: 首页 > news >正文

Http请求Cookie失效问题

Http请求Cookie失效问题记录

一、问题现象

在开发功能的过程中,业务依赖cookie进行取之,项目进行交互时会对前端http请求携带的cookies进行解析操作,但在自测调试对过程中出现账户的授权失效的报错问题。

在这里插入图片描述

二、问题排查

arthas进行代码方法报错排查,一步一步排查到当请求打到服务器时会被一个TokenFilter拦截,在其中会在中间价取到用户上下文,用户在登录的时候会在中间件设置上下文,并在http响应中设置rsid为对应业务数据形式,如:rsid_1:2_1245652125fsadfau

在请求业务服务器时,拦截会读取http请求中的cookies中的rsid值进行跟传来的token进行对比,如果不一致就会校验失败,出现上方的报错现象。

一开始以为是rsid设置的有误,就在用户登录的接口进行排查,发现确实是set上的rsid相关的业务数据,查看浏览器cookies设置也是成功的:如下图,but只针对主账户是成功的,其rsid数据例如:rsid_1_25672jrfanf

在这里插入图片描述
针对子账户则并非如此,发现其rsid对应的值为空:
在这里插入图片描述

登陆接口其实在响应中也设置返回了cookies给前端
在这里插入图片描述

那理论上应该是会设置成功的,那为什么会value为空呢???


在经过排查时,发现cookies对应的value不能有对应的特殊字符
在这里插入图片描述

在这里插入图片描述
当出现特殊字符就会被替换成空串

询问GPT
在这里插入图片描述


三、总结

在cookies的使用中,要符合对应的使用规范,避免开发中出现问题;

业务解决方案:将 替换为 ^

请求不再报错,符合功能业务


相关文章:

  • Spring Boot 依赖管理:spring-boot-dependencies vs spring-boot-starter-parent
  • 记录一下怎么重装服务器
  • Linux的7个运行级别
  • 明天是几号(c++题解)
  • 十大设计模式总结版
  • go使用gopprof分析内存泄露
  • 键入网址到网页显示,期间发生了什么?
  • NLP_语言模型的雏形N-Gram
  • Linux底层基础知识
  • 三层交换组网实验(华为)
  • Debian系统显示中文
  • 了解 WebSocket 和 TCP :有何不同
  • MSVC++远程调试
  • Google Play上架:因行为透明度被拒审或下架的政策自查(基于区块链的内容)
  • 【Linux】打包压缩跨系统/网络传输文件常用指令完结
  • 26条prompt规则应用于大模型
  • 【C/C++ 11】贪吃蛇游戏
  • Java入门高频考查基础知识8(腾讯18问1.5万字参考答案)
  • STM32--HAL库定时器学习记录(易懂)--持续学习
  • QT 应用中集成 Sentry
  • 洛杉矶奥组委确认2028年奥运会和残奥会开闭幕式场地
  • 汪明荃,今生不负你
  • 上海优化营商环境十大攻坚突破任务中,为何第一项是实施世行对标改革?
  • 上海加力提速推进优化营商环境,明确“十大攻坚突破任务”
  • 最新研究:基因编辑治疗晚期胃肠道癌显成效
  • 这个部位最容易变老,却被很多姑娘忽视了