springboot整合shiro地址栏JSESSIONID问题

举报
tea_year 发表于 2021/12/22 23:56:54 2021/12/22
【摘要】  第二次情形好了,就没有了sessionID  1、client向server发送请求http://localhost:8081                2、s...

 第二次情形好了,就没有了sessionID

 1、client向server发送请求http://localhost:8081

               2、server端经由shiro进行内部内部URL重定向至http://localhost:8081/login

               3、server收到http://localhost:8081/login请求后,发现请求头中没有cookie(因为这次请求是server内部重定向的),那么server就认为client端禁用了cookie,并且为这次会话产生唯一标示即SESSIONID,并将SESSIONID追加到http://localhost:8081/login,作为response响应给client。
————————————————
 

 4、client收到server的响应后,以http://localhost:8081/login;JSESSIONID=XXX 为URL进行请求重定向(上图中302是重定向的状态码),最后展示出登陆页

5、提交登陆信息后,server从请求信息中发现了cookie(因为这次请求是client发出的而非server内部重定向),会认为client没有禁用cookie,就不会进行URL重定向,而是将SESSIONID放入cookie之中,所以之后的请求URL就无需追加URL,如果此时手动删除client端的cookie,重新请求http://localhost:8081,就会发现SESSIONID再一次被追加到了URL后面。
————————————————
 

文章来源: aaaedu.blog.csdn.net,作者:tea_year,版权归原作者所有,如需转载,请联系作者。

原文链接:aaaedu.blog.csdn.net/article/details/104724734

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。