我正在尝试设置NPM(v9.4.0)代理,但在运行npm i -g npm@latest
时遇到以下错误:
npm ERR! code E407
npm ERR! 407 Proxy Authentication Required: npm@latest
我用于代理的密码包含" @"我怀疑这是问题的根本原因。我尝试过" \"在" @"之前还有
npm config set proxy http://"user:MyP@ssword"@proxy.big.corp.fr:8080
npm config set https-proxy http://"user:MyP@ssword"@proxy.big.corp.fr:8080
但没有成功。有没有人有想法?
答案 0 :(得分:7)
经过多次关于这个问题的研究并测试了10个以上的解决方案,比如用这个命令设置:
npm config set proxy“http://domain%5Cusername:password@servername:port/”
但不适合我。 然后测试CNTLM,但CNTLM对我不起作用。我尝试了所有可能的组合。 NPM正在提供身份验证错误。 最后我测试了Fiddler并节省了我的时间。它易于安装和配置。打开Fiddler =>规则=>自动验证。
打开C:\ Users \您的用户名\ .npmrc文件并使用此配置
注册表= http://registry.npmjs.org
HTTPS代理= http://127.0.0.1:8888
HTTP代理= http://127.0.0.1:8888
严格的SSL =真
删除此路径中的npm文件夹C:\ Users \ your username \ AppData \ Roaming。 使用以下命令:
npm install express npm uninstall -g @ angular / cli npm cache clean --force npm install -g @ angular / cli
答案 1 :(得分:1)
您也可以将密码转换为BASE64编码
npm config set proxy http://<user>:<base64 password>@proxy.big.corp.fr:8080
样品:
npm config set proxy http://myuser:bXlwYXNzd29yZA==@proxy.big.corp.fr:8080
答案 2 :(得分:0)
我检查并发现,在我公司,存在一个匿名代理。这也解决了我的问题。