【问题标题】:Cannot read property 'protocol' of undefined : axios react无法读取未定义的属性“协议”:axios 反应
【发布时间】:2018-05-24 22:28:49
【问题描述】:
const config = {
   headers: { "Content-Type": "application/octet-stream" }
}

let files = this.state.files
let promises = []
files.map((item ,index) => {
   promises.push(axios.put(this.props.deal.authURL[index], item, config))
})

我收到此错误:

Uncaught (in promise) TypeError: Cannot read property 'protocol' of undefined

我的目标是将 Axios 调用的所有结果存储在 promises 数组中。然后使用Promise.all() 函数一次性解决所有问题。无法弄清楚为什么会出现错误。

感谢任何形式的帮助。谢谢

【问题讨论】:

  • 由于您显示的代码不包含protocol 的任何内容,您可能显示错误的代码

标签: reactjs promise axios


【解决方案1】:

推荐的解决方案

就像上面已经提到的,当我们发送格式错误的请求或错误的方法或正文/标头中的任何错误时,都会引发此错误。
但是,如果您已经检查了所有这些,并且它们都没有问题,并且您仍然收到错误,那么您很可能是错误地处理了响应。
如何纠正?
将请求发送到console.log(response) 总是一个好主意,这样我们就知道如何处理响应了。

今天下午我遇到了类似的问题。坐了一会儿,纠正了所有的方法/请求链接之类的东西,我仍然得到一个错误,然后我意识到我错误地处理了响应。

所以,总是建议console.log回复。

【讨论】:

    【解决方案2】:

    this.props.deal.authURL[index] 返回一个未定义的 url,这就是随机错误的原因。

    【讨论】:

    • 好吧,您不妨删除问题本身,或对其进行编辑,以便对未来的读者有所帮助,我怀疑它是否处于当前状态
    猜你喜欢
    • 2021-12-06
    • 2014-02-16
    • 2021-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-19
    相关资源
    最近更新 更多