查看原文
其他

HTTP库Axios推送损坏的更新,导致数千个网站瘫痪

IT服务圈儿 2023-02-06

出品 | OSC开源社区(ID:oschina2013)


Axios 是基于 Promise 的 HTTP 网络请求库,用于浏览器和 Node.js。Axios 体积非常小,提供了一个简单易用的库,具有易于扩展的接口。近日 Axios 发布的 1.1.0 版本更新在推送给用户后,由于包含损坏,导致数千个网站瘫痪。根据用户提交的 issue,在 Axios v1.1.0 中,他们使用 axios.get 时出现了错误,会提示 TypeError: axios.get is not a function。这导致几乎所有请求都无法成功,因为如果按照预期的行为,axios.get 是一个有效的函数。这名用户还附上了重现问题的方法,使用 <script> 引入 axio v1.1.0,然后直接引用 axios.get() 就能复现错误:
<script src="https://unpkg.com/axios@1.1.0/dist/axios.min.js"></script><script> axios.get(...)</script>
注意:此问题没有在 v1.0.0 中复现。
从 issue 的评论可以看到,这些留言的开发者几乎全部由于此问题而导致生产环境直接崩溃。有开发者发现回滚到 1.0.0 即可解决此问题,但由于自己的 App 更新后需要审核,所以即便知道了解决方法也不能马上修复。也有开发者认为,受此问题影响的开发者在某种程度上 “不值得同情”,因为他们的生产应用在 CDN 上使用了最新(自动升级)的版本库,这是十分愚蠢的行为。开发团队在确认问题后,次日连续发布了两个补丁更新(v1.1.1 & v1.1.2)来修复错误,建议所有用户升级至最新版本。相关链接:https://www.reddit.com/r/programming/comments/xxu545/framework_axios_pushed_a_broken_update_crippling/https://github.com/axios/axios/issues/5038


1、强制安排!不只是iPhone!苹果多款产品必须用 USB-C 接口…

2、通信工程师,到底是干啥的?

3、炸锅了,竟有这种好东西,那我可不困了!

4、这款老牌开源工具,10 周年大更新了,强烈推荐!

5、24年了,终于有人发现curl的这个Bug了

点分享

点点赞

点在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存