vue中使用axios,能够获取数据返回状态码为200,但是不执行then,执行了catch的问题?

发布于 2022-09-12 01:57:54 字数 354 浏览 11 评论 0

    getDataFunc() {
      let that = this;
      
      axios.get('/api/test.php')
      .then(function(response) {
        console.log(response);
      })
      .catch(function(error) {
        console.log(error);
      });
    },

Network里面看响应码是200,且返回了json数据,但是没有执行then直接执行了catch,且error还是undefined。
————
想请问是什么原因?

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

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

发布评论

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

评论(6

青芜 2022-09-19 01:57:54

看一下你是给 axios 配了拦截器(interceptors)之类的么,感觉是拦截器里面抛出异常了。

原谅我要高飞 2022-09-19 01:57:54

控制台有报错吗?别是跨域了。

换原生的试一下呢?或者换其他库。响应的 content-type 是什么?

葵雨 2022-09-19 01:57:54

查看一下,你的axios.interceptors.response拦截器中是否有做抛出,一个是正常返回的response抛出,一个是error抛出

方觉久 2022-09-19 01:57:54

当then里出现代码错误时,也会进catch,比如某个对象不存在却给它赋值这种操作,就会进catchSnipaste_2020-03-31_15-13-57.png

飞烟轻若梦 2022-09-19 01:57:54

应该是 then 里面的代码写的有错误,所以走了 catch。

画尸师 2022-09-19 01:57:54

解决了吗,遇到同款问题,就方法

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文