我的编程空间,编程开发者的网络收藏夹
学习永远不晚

关于两次访问接口的sessionid不一致问题

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

关于两次访问接口的sessionid不一致问题

在这里插入图片描述在这里插入图片描述

在测试验证邮箱、注册逻辑时,出现验证码错误的问题。验证码是存放在session内的,在排除了逻辑代码的问题后,检查出这两次访问接口的sessionid并不一致,而在swagger测试接口时是一致的。因此我比较了swagger与ajax请求/响应头的区别,发现服务器返回了sessionid,ajax并未携带此sessionid:
在这里插入图片描述
在这里插入图片描述

问题出现在ajax,搜一下ajax如何手动携带cookie就可以了,就很容易解决了。最后我们来回顾一下session的工作流程:

Session是一种在Web应用程序中用于存储和管理用户数据的机制。它主要涉及到以下流程:
1、客户端向服务器发送请求。
2、服务器在接收到客户端请求之后,会为该会话生成一个唯一的sessionid,并将该sessionid存储在一个cookie中,然后将该cookie发送给客户端。
3、客户端在接收到服务器发送的response后,会自动保存该cookie,并在后续的请求中将该cookie包含在请求头中。
4、服务器在接收到客户端发送的后续请求时,会自动从请求头中提取sessionid,并使用该sessionid来查找该客户端的会话。
5、如果服务器找到了该会话,则会将该会话中存储的数据发送回客户端,以便客户端可以使用这些数据来执行操作。
6、如果服务器没有找到该会话,则会创建一个新的会话,并将该会话的sessionid存储在一个cookie中,然后将该cookie发送回客户端。
7、在客户端结束会话(例如关闭浏览器)时,浏览器会自动删除该cookie,从而结束该会话。

总的来说,Session的流程就是服务器生成一个唯一的sessionid,并将其存储在客户端的cookie中,以便服务器能够识别客户端的会话。服务器使用该sessionid来查找该客户端的会话,并使用该会话来存储和管理用户数据。客户端通过在请求头中包含该cookie来与服务器交互,并在会话结束时自动删除该cookie。

来源地址:https://blog.csdn.net/weixin_44512485/article/details/129368462

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

关于两次访问接口的sessionid不一致问题

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

关于访问后端接口报404错误问题的解决方法(全网最细!)

404页面的出现会降低用户体验,那么导致404页面出现的原因是什么呢?这篇文章主要给大家介绍了关于访问后端接口报404错误问题的解决方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
2023-05-16

关于访问后端接口报404的问题——全网最详细的404错误详解

当我们通过前端向后端发起一个请求调用后端接口时,经常会遇到404的问题。网上关于对404问题介绍的一大堆,其实404问题的本质就两点。 在介绍404问题之前先温习一个小的知识点——项目访问路径 项目访问路径:就是定位一个项目的路径,可以
2023-08-16

编程热搜

目录