我需要在 Windows 上运行最新版本的 Node 和 NPM。我安装了 Node 0.5.8 并从 GitHub 下载了 NPM 的源代码。我遵循的安装 NPM 的步骤列在其 GitHub 站点上,但我在运行以下命令时遇到问题:
node cli.js install npm -gf
Run Code Online (Sandbox Code Playgroud)
但它失败并显示以下错误消息:
Error: connect UNKNOWN
at errnoException (net_uv.js:566:11)
at Object.afterConnect [as oncomplete] (net_uv.js:557:18)
System Windows_NT 5.1.2600
command "...\\Node\\bin\\node.exe" "...\\npm\\cli.js" "install" "npm" "-gf"
cwd ...\npm
node -v v0.5.8
npm -v 1.0.94
code UNKNOWN
Run Code Online (Sandbox Code Playgroud)
我认为这是一个问题,因为我需要在我的代理上进行身份验证才能连接到 Internet。但是我发现无法告诉安装程序使用我的凭据进行登录。是否有可能通过命令行参数向 npm 安装提供我的代理 IP 和登录信息?
如果需要,我可以使用 pastebin 提供完整的日志(但似乎没有更多相关信息)。
Eri*_*orn 39
set http_proxy
对我来说效果很好,但是每次打开命令提示符时我都必须输入它。所以我不得不结合多个答案,现在我的答案是永久性的。
我的顺序如下:
C:\Users\YourUserName
.npmrc
proxy = http://domain\\username:password@ip:port
proxy = http://username:password@ip:port
npm
其他人使用以下额外命令取得了额外的成功:
strict-ssl = false
*您应该能够使用 IP 地址或代理 URL 来代替上面的“IP”。
您的代理字符串可能需要稍微调整一下,但这使得我不必每次都添加它。
干杯
小智 10
也许设置一个环境变量对你有用:
set HTTP_PROXY=http://user:pass@server.url:port
Run Code Online (Sandbox Code Playgroud)
(在我的例子中,这解决了“connect UNKNOWN”,但我得到了一个完全不同的“socket hang up”错误。我也尝试设置 HTTPS_PROXY 环境变量,但得到了相同的结果。)
小智 8
我有这个相同的问题,这是我为使这项工作所做的工作:
C:\Users\YourUserName
.npmrc
它的条目将显示为:
registry = http://registry.npmjs.org
Run Code Online (Sandbox Code Playgroud)node cli.js install npm -gf
再次尝试该命令。
经过一番研究,我可以这样使用它:
安装 NTLM 授权代理服务器或 NTLM 的其他代理服务器,例如 Cntlm。就我个人而言,我更喜欢python服务器,因为我可以修补它,而且性能不是问题。
设置配置;请注意,就我而言,我必须同时启用 LM 和 NT 模式,而且我怀疑现在这是正常情况。
设置 http_proxy 和 https_proxy 环境变量以指向您的本地代理:
设置 http_proxy="localhost:5865"
设置 https_proxy="localhost:5865"
npm 现在应该可以工作了,当然它应该从定义了上述环境变量的 shell 中执行。
归档时间: |
|
查看次数: |
167086 次 |
最近记录: |