【vue axios 跨域】cookie、origin等一步步递进的跨域踩坑 已解决

本文分享了在Vue项目中使用Axios进行前后端对接时遇到的跨域问题,包括'Access-Control-Allow-Origin'缺失、携带Cookie请求失败以及Set-Cookie未写入浏览器等问题,并提供了详细的前端(Vue、Axios配置)和后端(Springboot)解决方案。
摘要由CSDN通过智能技术生成

前后端对接必出bug,最近连续对接了两个项目,对解决跨域有点感觉了,跟大家分享一下经验,都是血的教训…

两个项目都是Springboot+Vue(axios网络请求)。本人主要负责前端,所以前端会分享具体的代码,后端就大致分享一下相应的解决思路。(如果你是后端,应该都懂;如果你是前端,就把思路告诉你的后端,他应该都懂~)

第一个坑:No ‘Access-Control-Allow-Origin’ header

首先,最初也是最常见的情况。在浏览器直接输入网址可以访问到后端,但是前端无法请求到。跨域报错信息:No ‘Access-Control-Allow-Origin’ header is present on the requested resource.
在这里插入图片描述
后端解决方案:这一步前端还不需要做啥,后端在响应头中把“Access-Control-Allow-Origin”设置为“*”,这是大家最熟悉的解决方案了。

第二个坑:登录前的页面一切正常,登录后的页面,也就是需要携带cookie请求的页面,就会出现401报错,即用户没有访问权限,需要进行身份认证,说白了就是没有携带cookie请求后端。

前端解决方案:这是axios的坑,axios发送请求默认不携带cookie,需要前端设置一

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值