Vue axios 跨域请求无法带上cookie的解决
在main.js设置
// 携带cookie
axios.defaults.withCredentials = true
补充知识:VUE axios请求跨域时没有带上cookie或者每次cookie都改变
这两天用VUE写管理后端时,碰到一个奇葩问题:
我本地使用dev配置开发的时候 请求可以带上cookie信息 打包出来部署在服务器上 请求就没带上cookie信息。
然后自己慢慢排查,联合后端同事,排查这个cookie问题,前端也配置了
axios.defaults.withCredentials = true;
后端也配置了跨域cookie,然后就是没用,每次后台获取到的sessionID都是一个新的。
得,仔细对比了跨域相关的配置,发现这块真的没啥问题,那就开始检查VUE工程的引入的工具了。
经过挨个排查,终于发现了作妖的东西了:mock.js
由于配置的问题,在打包部署的时候,将mock引入打包了,mock将每次的请求的cookie都重新刷新了,导致后台每次获取的SessionID都不一样。
得,自己写的代码 怪谁呢?
以上这篇Vue axios 跨域请求无法带上cookie的解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
时间: 2020-09-07
在axios向后端传参时需要设置请求头,确保请求参数的格式为JSON字符串(此时用JSON.stringify(obj)无效时) this.$a