安装npm包时持续出现EAI_AGAIN错误,代理设置无效求助
解决npm安装包时的EAI_AGAIN错误
你遇到的EAI_AGAIN错误本质是DNS解析失败——npm没办法成功解析registry.npmjs.org的服务器地址,导致请求包资源时卡住。结合你已经试过重置代理的情况,给你几个针对性的解决步骤:
先验证DNS解析是否正常
先在终端执行ping命令,确认你的机器能不能找到npm仓库的地址:ping registry.npmjs.org如果ping不通,说明你的本地DNS设置有问题,可以尝试切换公共DNS(比如谷歌的
8.8.8.8或者国内的114.114.114.114),修改后再重新测试。清除npm缓存
有时候缓存损坏也会导致这类网络请求异常,执行命令强制清理缓存:npm cache clean --force切换npm镜像源
如果官方源的网络连接不稳定,可以临时切换到国内的镜像源(比如淘宝镜像),或者重置官方源的配置:# 切换到淘宝镜像 npm config set registry https://registry.npmmirror.com/ # 如果想换回官方源,先删除现有配置再重新设置 npm config delete registry npm config set registry https://registry.npmjs.org/再次确认代理配置
虽然你已经重置过代理,但可以再检查一下当前的代理设置,确保没有残留的错误配置:# 查看当前代理 npm config get proxy npm config get https-proxy # 如果有多余的代理配置,删除它们 npm config delete proxy npm config delete https-proxy避免用sudo执行npm命令
用sudo执行npm会使用root用户的配置,可能和普通用户的配置不一致。可以先修改npm全局目录的权限,避免依赖sudo:sudo chown -R $USER:$GROUP ~/.npm之后直接执行
npm i ngx-pagination --save即可,不需要加sudo。
如果以上步骤都试过还是不行,可以试试重启你的网络服务,或者重启电脑,再重新执行安装命令。
内容的提问来源于stack exchange,提问作者tabish ahmed




