npm ERR! network getaddrinfo ENOTFOUND

76

在使用NPM安装任何软件包时,我遇到了npm ERR!network getaddrinfo ENOTFOUND错误。我知道有许多关于同一问题的帖子,但我找不到任何可以帮助我的帖子。

我已经设置了代理,我认为问题与代理设置不正确或未使用正确的URL有关。

npm config set proxy http://proxy.company.com:8080
npm config set https-proxy http://proxy.company.com:8080

在设置代理时,有没有办法检查我正在使用的URL是否正确?我需要采取哪些步骤来纠正这个问题吗?

输入图像描述


我知道这是一个非常老的帖子,但它也被高度浏览。你能否将你的错误信息图像转换为实际文本? - starball
33个回答

51

也许是因为代理不支持 https。 我所做的就是清空 ~/.npmrc 文件中的代理内容,或者使用

    npm config delete proxy

此外,推荐使用nrm解决该问题。


26

我正在设置代理,如下:

npm config set http_proxy=http://domain:8080

改用正确的方式

npm config set proxy http://domain:8080

2
注意:观看者请确保代理以 http:// 开头,而不仅仅是写成 someHost:1234 - izogfif

19

不要使用npm config set http_proxy=http://address:8080来设置代理,而是前往 ~/.npmrc 并删除代理配置。这解决了我的问题。


6
~/.npmrc 文件位于哪里? - eaglei22
这解决了我的问题。我只是打开了 .npmrc 文件并删除了代理行。 - Kishan Bharda
1
.npmrc 文件位于:C:\Users\计算机名称\ - ILIAS M. DOLAPO

9

我遇到了完全相同的错误,这是我所做的。

npm config get proxy

并且它返回了“null”

打开“C:\ Users \ Myname.npmrc”文件并进行了一些更改。这是我.npmrc文件现在的样子

http-proxy=http://proxyhost/:proxyport
strict-ssl=false
registry=http://registry.npmjs.org/

7

我也遇到过这个错误,但当时我没有在代理服务器后面工作,因此使用 npm config set proxy=http://address:8080 无法解决问题,~/.npmrc 文件中也没有代理设置。在我的情况下,解决方案就是重新启动电脑


5
我使用的解决方案如下:
  1. 删除代理:npm config delete proxy
  2. 检查npm config get proxy,它应该返回null

现在,检查是否能够安装包。如果不能工作,请尝试手动编辑配置,输入:npm config edit,记住你在VI编辑器中。

在以下代码前添加;(注释掉): npm config set proxy http://proxy.company.com:8080 npm config set https-proxy http://proxy.company.com:8080

保存并退出文件:x

现在,尝试安装包。它应该可以工作。


3

你的代理是否需要身份验证?如果需要,你可能想这样配置你的代理。

占位符名称。 用户名是你实际用户名的占位符。 密码是你实际密码的占位符。 proxy.company.com是你实际代理的占位符。 *端口*是代理经过的实际端口。通常为8080。

npm config set proxy "http://username:password@proxy.company.com:port"
npm config set https-proxy "http://username:password@proxy.company.com:port"

就是这样!我一直在我的用户名前面拥有自己的域名。 - Ruan

2

这是由于代理错误导致的:
在命令提示符中尝试以下操作
npm config get proxy
如果不为空,则进入
c/users/computerName/.npmrc
用记事本打开此文件
现在完全清除代理行
尝试上面的命令
如果为空,则安装Angular
npm i -g @angular/cli


2

我也遇到了同样的问题,但以上方法都没有帮助,然后我尝试了这个:

ipconfig /flushdns
ipconfig /renew

之后一切都按预期运行。 希望能对大家有所帮助。


1
对我来说,从文件夹中删除~/Users/.npmrc有所帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接