最近在做毕设,刚开始学vue,遇到了跨域问题。
经过搜索发现,大多数教程都是在前端axios设置
axios.defaults.withCredentials = true
同时后台设置拦截器,允许跨域
//这里括号中不能用 * corsConfiguration.addAllowedOrigin("http://localhost:8080");
但是经过反复测试,你会发现网上的教程大部分都不管用,导致我浪费了整整一天的时间!!!!
关于上述教程有需要的可以自行百度。
最后重点来了!!!!!!
如果你是chrome浏览器,Chrome升级到80版本之后cookie的SameSite属性默认值由None变为Lax,这也就造成了一些访问跨域cookie无法携带的问题。比如本地调试时使用http://localhost:8080/,而cookie是种在测试环境路径下这就造成本地调试跨域访问不通了。可以考虑在本地开发环境下disable该SameSite属性。在Chrome中访问chrome://flags/,搜索SameSite并设置为disabled即可。

希望大家不要在因为这个而浪费时间了!!!
参考:
https://juejin.cn/post/6876380345525092366

本文介绍了在使用Vue、Axios和SpringBoot进行开发时遇到的跨域Cookie无法被后台读取的问题,重点指出Chrome 80版本后Cookie SameSite属性默认值变化导致的本地调试困扰,并提供了修改设置以解决这个问题,旨在帮助开发者避免因此浪费时间。
最低0.47元/天 解锁文章
1711

被折叠的 条评论
为什么被折叠?



