axios get请求返回undefined

vue-cli配置了axios,post请求没问题,get请求会返回undefined,求指教

// 返回一个Promise(发送get请求)

export function fetchGet (url, param) {
return new Promise((resolve, reject) => {
axios.get(url, {params: param})
  .then(response => {
    resolve(response.data)
  }, err => {
    reject(err)
  })
  .catch((error) => {
    reject(error)
  })
})
}

// 封装api

getBankName (p) {
return fetchGet('api/rong360BankName', p)
}

调用这个接口,返回的undefined,但显示接口是调用成功的

  async choicesBankName () {
  const aa = await api.getBankName()
  console.log(aa)
},

clipboard.png

clipboard.png
最后祝各位情人节快乐,情人节还要打代码的苦逼程序员

阅读 16.8k
4 个回答

解决了,是响应拦截器的配置问题,感谢楼上的大神

你这个地方有问题,定义的时候多写了一个err。

多个参数不能写多个箭头函数,结果见图二,你这个undefined的来源见图三,因为被reject了,所以赋值拿到undefined

clipboard.png

clipboard.png

clipboard.png

axios.get 返回的已经是promise了,没有必要在包装一下

图片描述返回response有值,但response.data 是undefiend 是怎么回事

图片描述 如果config设置了 transformResponse转换 没有return data 那么data的值就是空的。这个不起眼的配置简直不能瞎配啊。要不会坑半天

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题