原因很简单:
SSL证书失效
错误信息 npm ERR! code CERT_HAS_EXPIRED
指出了尝试从 https://registry.npm.taobao.org/axios
获取 axios
库时遭遇 SSL 证书过期问题。通常这表示 HTTPS 请求因为服务器的 SSL 证书无效或过期而被拒绝。
要解决这个问题,你可以选择以下几种方法中的一种:
-
更换 NPM 源:
你可以临时更换 npm 镜像源至官方源或其他镜像源。使用以下命令可以更改 npm 的配置来指向官方注册表:npm config set registry https://registry.npmjs.org/
或者使用这个的镜像(亲测可用):
npm config set registry https://registry.npmmirror.com
确保选择的新源的 SSL 证书是有效的。
-
联系镜像源维护人员:
如果你希望继续使用taobao.org
的镜像源,可以联系他们的维护人员报告 SSL 证书过期的问题,等待他们更新证书。 -
检查本地系统时间:
确保你的本地系统时间是准确的。一个错误的系统时间可能会导致 SSL 证书看起来“过期”。 -
暂时禁用 SSL 证书验证(不推荐):
如果你确信你所访问的服务是可信的,并且需要立即解决问题而不是等待证书更新,你可以暂时禁用 SSL 证书校验:npm config set strict-ssl false
请注意,这种方法会降低你的安全性,因此只应该在你完全信任你的网络环境,并且急需安装包时作为临时措施使用。
在采取上述任何措施后,你应该再次尝试运行 npm install
。记得在问题解决后,如果你选择了暂时禁用 SSL 验证,要重新启用严格的 SSL 验证来确保你的连接安全:
npm config set strict-ssl true