【解决】axios 下载文件 Failed to read the 'responseText' property from 'XMLHttpRequest'

主要解决以下两个问题

问题一:idm一些网站不允许请求同一文件两次

故障原因:IDM 在发神经

因为它检测到浏览器集成插件未安装,所以诱导你安装。实际上,装了插件问题也会出现。改参数都没用。

1.很可能是你点击网页的 下载链接 有问题(换个网页下载试试,就不提示了),Edge 浏览器一直会欺骗你, Google 浏览器偶会欺骗你。⇒ 如果开发项目,检查后端接口正常

问题二:Uncaught DOMException: Failed to read the 'responseText' property from 'XMLHttpRequest': The value is only accessible if the object's 'responseType' is '' or 'text' (was 'blob').
at r.onreadystatechange (http://cdn.staticfile.org/axios/0.1.0/axios.min.js:2:1004)

2.也可能是前端 请求工具 出了问题。比如请求工具

// post、put、patch 等请求
axios.post(url, {...someData}, {responseType: 'blob'})
    .then((res) => {
        //...
    }).catch((err) => {
        //
    })

故障原因:排查一个早上,也参考了 Github 一些仓库的代码,在另一个项目也正常用的,这个语法没有问题。最后才发现,是 axios 版本太 TM 老了。

<!--<script src="//cdn.staticfile.org/axios/0.1.0/axios.min.js"></script>-->
<script src="//cdn.bootcdn.net/ajax/libs/axios/1.3.6/axios.min.js"></script>

更新到 1.3.6 ,网页点击下载,就正常了。IDM也不报错。

热门相关:无量真仙   学霸女神超给力   横行霸道   战神   夫人,你马甲又掉了!