阅读.npmrc文件中的代理变量,但它不起作用。尽量避免手动下载所有需要的包并安装。


当前回答

Windows系统

尝试删除代理和注册表设置(如果已经设置),并通过命令行设置环境变量

SET HTTP_PROXY=http://username:password@domain:port
SET HTTPS_PROXY=http://username:password@domain:port

然后尝试运行NPM install。这样,你就不用在.npmrc中设置代理了,但是对于那个会话,它是可以工作的。

其他回答

要在NPM安装中使用代理,忘记所有NPM配置的东西,只需在代理环境变量中设置一个HTTP代理,然后执行NPM I

export https_proxy=http://proxy.address.com:1090/
export http_proxy=http://proxy.address.com:1090/

这对我来说总是有效的。

我不知道为什么,但NPM似乎不能很好地与socks代理,但它与HTTP代理工作得很好。

很多应用程序(例如npm)可以使用用户环境变量的代理设置。

您可以向您的环境中添加以下变量HTTP_PROXY和HTTPS_PROXY,它们对于每个变量都具有相同的值

http://user:password@proxyAddress:proxyPort

例如,如果你有Windows,你可以添加代理如下:

这对我来说在Windows中是有效的:

npm config set proxy http://domain%5Cuser:pass@host:port

如果您不在任何域中,请使用:

npm config set proxy http://user:pass@host:port

如果您的密码包含特殊字符,如“,@,:等,请将它们替换为URL编码值。例如“->%22,@->%40,:->%3A。%5C用于字符\。

$ npm config set proxy http://login:pass@host:port
$ npm config set https-proxy http://login:pass@host:port

Windows系统

尝试删除代理和注册表设置(如果已经设置),并通过命令行设置环境变量

SET HTTP_PROXY=http://username:password@domain:port
SET HTTPS_PROXY=http://username:password@domain:port

然后尝试运行NPM install。这样,你就不用在.npmrc中设置代理了,但是对于那个会话,它是可以工作的。