yzForum截止2020.12.22的跨域问题

day01

第一天印象有点模糊了 是通过vue使用axios调用nginx然后springcloud发生了跨域问题。
通过搜索更改请求头’Access-Control-Allow-Credentials’ ‘true’;&‘Access-Control-Allow-Origin’ ‘*’; 也没有解决问题 最后在Controller类上加上 @CrossOrigin 解决了问题。

day02

导包顺序

最为一个前端小白在cookie获取上又出了大问题
首先是jquery,需要两个包 但每次运行在console都会报错:显示function没有定义。啊 这就 唉…

最后知道了是这两个包导入的时候是有顺序的 需要先引入jquery 然后cookie

困扰一下午的大头来了

cookie跨域丢失问题

在通过$.cookie(cookieName);获取cookie的时候都是undefined。确定后端发送cookie成功。
第一个想到的肯定就是浏览器的问题 发现cookie设置成允许任何cookie也不能解决问题

浏览器

搜索获知Chrome新增了SameSite这个属性给cookie 那就修改一下吧
通过Chrome直接访问chrome://flags/#same-site-by-default-cookies
搜索SameSite

将这两项设置为Disabled
遗憾的是任然没有解决 那这还是浏览器的问题吗???
Cookie 的 SameSite 属性

后端cookie属性设置

接下来直接通过localhost跨过nginx和zuul直接调用可以获取cookie。
又获知可以给后端发送的cookie设置SameSite属性
Springboot应用中设置Cookie的SameSite属性
设置是设置成功了但是还是只能通过localhost直接访问才可以获取,通过网关获取还是不行

nginx设置

搜索的时候发现nginx可能会发生跨域丢失的问题
在nginx.conf加了一行属性proxy_cookie_path但是遗憾的是仍然没有解决问题

SpringCloud-zuul网关设置

SpringCloud zuul Cookie跨域丢失问题
在zuul网关application.properties里面加了一句zuul.sensitive-headers=再次运行的时候可以获取cookie了
最后想看看到底是哪里的问题的时候 将后端的cookie属性设置去掉,把nginx属性配置去掉都可以,那也就是zuul网关自己的问题了。整整三个小时,这或许是程序猿掉头发的原因吧

刚刚入门的小小白,如有错误欢迎批评,奥利给

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值