我遇到了一个问题:在尝试安装Node.js模块时,出现了“错误:无法建立隧道套接字,原因是 getaddrinfo ENOTFOUND”。看起来是代理出了问题。我已经检查了浏览器设置,代理已被禁用。但是当我在命令提示符中运行“npm config get proxy”时,会得到“192.168.98.5:8080”的结果。请问如何禁用这个代理?
首先,尝试执行npm config delete proxy
。如果出现类似于Error: ENOENT,unlink '/Users/drlazor/.npmrc'
的内容,则说明没有npm配置文件,因此也没有代理设置。
其次,请使用npm config get proxy
验证是否没有代理设置。你应该会得到一个null
或上述错误。如果仍然获得与null
不同的结果,则应确保您没有设置环境变量HTTP_PROXY
。
最后,如果前两个方法都无效,请尝试从浏览器访问URL;这可能是网络问题。
npm config edit
打开npm配置文件,通过在行首添加";"(分号)注释以下两行内容。
npm config set proxy http://proxy.company.com:8080
npm config set https-proxy http://proxy.company.com:8080
完成了。 现在可以安装任何你想要的包。
npm install -g cordova
npm install -g npm
npm config delete https-proxy
,我仍然遇到问题。然后我尝试了 npm config edit
,惊讶的发现 https-proxy 仍然被设置了!将其删除后问题得到解决。谢谢。 - akashnpm config edit
寻找:
registry=http://alternateurl
https://registry.npmjs.org/
您可以连接到您的 VPN/网络,或更改配置以进行纠正。
npm config set proxy http://proxy.name.xx:port
npm config set http-proxy http://proxy.name.xx:port
npm config set https-proxy http://proxy.name.xx:port
{
"proxy": "http://proxy.name.xx:port",
"https-proxy": "http://proxy.name.xx:port",
"strict-ssl": false
}
npm config delete https-proxy
npm config delete proxy
如果您正在使用代理,请使用以下方法:
npm config set proxy $PROXY
npm config set http-proxy $PROXY
两者都可能起作用