vue axios发的post请求没携带cookie

发布于 2022-09-11 23:03:01 字数 898 浏览 7 评论 0

没法携带Cookie至后端

我用的是vuecli3版本,发post请求,用了网上的axios.defaults.withCredentials=true依然无济于事

登陆时,后台能收到数据,但是rightCode=null(就是存在我本地cookie里的验证码),导致一直返回验证码错误。

相关代码

main.js中

import axios from "axios";
import VueAxios from "vue-axios"
axios.defaults.withCredentials=true;
Vue.use(VueAxios,axios)

login.vue组件中

submit(){    
        this.axios.post('/user/login', 
        {
        account: this.account,
        password: this.password,
        checkCode: this.checkCode
        },{
            headers: {"Content-Type":"application/json;charset=utf-8"},
            // withCredentials:true
      }).then(function (response) {
            console.log(response.data);
        })
        .catch(function (error) {
            console.log(error);
        });

}

摆脱各位伸出援手,我是真的顶不住了。不知道我这样描述是否清楚,不清楚可以继续问我,真心求解,两天了困扰我

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

吝吻 2022-09-18 23:03:02

同样遇到了这个问题 请问解决了吗?如何解决的

城歌 2022-09-18 23:03:01

F12检查下,确定时COOKIE发不过去?这个问题我之前也遇到过,也很有可能是后端的问题。

愚人国度 2022-09-18 23:03:01

withCredentials 需要后端配合,在 Response Header 中返回如下。

Access-Control-Allow-Credentials: true
╰沐子 2022-09-18 23:03:01
  1. 不跨域的时候,HTTP 携带 cookie 是协议里规定的,换言之,你不需要主动操作
  2. 跨域的时候,如果服务器包含 CORS 头,那么 withCredentials=true 可以携带 cookie。
  3. 看不出来有任何必要把验证码存到 cookie 里面,程序逻辑有问题
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文