为了账号安全,请及时绑定邮箱和手机立即绑定

axios catch错误

axios catch错误

慕码人2483693 2019-03-20 18:13:10
    this.axios({      method: 'POST',      url: URL,      data: {        "mobile": tel,        "auth_code": code,        "lngLat": this.lngLat,        "regSource": 'H5',        "frc": "H5",        "ref": this.ref      },      headers: {        'appId': config.config.APPID,        'token': this.token      }    })      .then(function (response) {        console.log(response)      })      .catch(function (error) {        console.log(error)      });                  console.log(error)里边输出                Error: Request failed with status code 400    at createError (createError.js?16d0:16)    at settle (settle.js?db52:18)    at XMLHttpRequest.handleLoad (xhr.js?ec6c:77)    at _this.(anonymous function) (chrome-        extension://jegnjmcegcpodciadcoeneecmkiccfgi/enablecrossorigin.js:81:55)            这样写哪里错了吗,为什么catch(err)啊
查看完整描述

4 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

post 的data 要 JSON.stringify(bodyData)


查看完整回答
反对 回复 2019-03-22
?
慕妹3242003

TA贡献1824条经验 获得超6个赞

楼上说的很对,主要看后台要求post请求可以接受什么数据,axios中post默认请求数据格式是application/json,如果后台不支持可以

设置请求头格式

在config配置headers: {'X-Requested-With':'XMLHttpRequest'},

格式化数据

并引入axios里面内置的qs,不需要重新下载


import qs from 'qs'

this.axios({

      method: 'POST',

      url: URL,

      data: qs.stringify({

        "mobile": tel,

        "auth_code": code,

        "lngLat": this.lngLat,

        "regSource": 'H5',

        "frc": "H5",

        "ref": this.ref

      }),

      headers: {

        'appId': config.config.APPID,

        'token': this.token,

        'X-Requested-With':'XMLHttpRequest'

      }

    })


查看完整回答
反对 回复 2019-03-22
?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

语法格式错误,估计传的参数和服务端要求的不一致造成的。


查看完整回答
反对 回复 2019-03-22
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

axios拦截器里面,设置content-type了吗?
后台接收content-type:application/json;还是application/x-www-form-urlencoded或者别的,
400后台应该是都没收到你的请求

查看完整回答
反对 回复 2019-03-22
  • 4 回答
  • 0 关注
  • 2448 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信