问题
做前后端分离的项目时,有一个业务是登录成功后跳转到主页并展示列表,否则跳回登录页。
但无论登录多少次都进不到列表页,并抛出“未登录”的异常。
通过debug发现已经登录成功,就是登录的sessionId和查询的不一样,如下图:
![](https://img-blog.csdnimg.cn/img_convert/9f290bd7005ab655639da2d155fc783b.png)
看来是cokkie出了问题。
解决:经多方查找,找到三个解决方案
1、chrome本身的问题:当时用的是chrome浏览器
(1)在地址栏里输入chrome://flags
(2)在搜索框里搜索关键字SameSite,找到与之匹配的项SameSite by default cookies
(3)将其设置为Disabled,然后关闭浏览器再打开请求。
===可是我没有找到这个选项,只能找找下一种方案===
2、前端携带cookie和后端接收cookie的问题:前端是axios发送请求
(1)在前端的axios插件中做如下配置
![](https://img-blog.csdnimg.cn/img_convert/a9e2e431a0bb00c8aeacaf8ab6bd274b.png)
(2)在后端的跨域配置中做如下配置
![](https://img-blog.csdnimg.cn/img_convert/71b1b281f6f91b180d78641d1a8fdd62.png)
===全配置好后仍然失败,继续下一种===
3、增加后端配置
(1)在springboot的yml文件中做如下配置
![](https://img-blog.csdnimg.cn/img_convert/28a6886ffbb9913bd0b0f2e9cf663d13.png)
===再次启动,完美运行.注意最好将第二、三种方案都配置一下===
![](https://img-blog.csdnimg.cn/img_convert/9185633fb7e0f17c910f152db45b4e59.png)