我有一个npm的问题,我不能安装任何东西。以下是错误信息:

C:\Windows\system32>npm install -g yo
npm http GET https://registry.npmjs.org/yo
npm http GET https://registry.npmjs.org/yo
npm http GET https://registry.npmjs.org/yo
npm ERR! network read ECONNRESET
npm ERR! network This is most likely not a problem with npm itself
npm ERR! network and is related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settin
gs.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly.  See: 'npm help config'

npm ERR! System Windows_NT 6.2.9200
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nod
ejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-g" "yo"
npm ERR! cwd C:\Windows\system32
npm ERR! node -v v0.10.17
npm ERR! npm -v 1.3.8
npm ERR! syscall read
npm ERR! code ECONNRESET
npm ERR! errno ECONNRESET
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\Windows\system32\npm-debug.log
npm ERR! not ok code 0

知道为什么吗?这是我的网络设置,似乎我没有配置任何代理。我还关闭了所有的防火墙。


当前回答

我最近安装了Fiddler,它(我不知道)通过127.0.0.1:8866添加了一个网络代理。我进入我的Ubuntu网络设置,点击进入“网络代理”设置,并禁用它,然后一切恢复正常。

所以一般来说,检查确保你没有因为你正在做的其他事情的副作用而设置网络代理。

其他回答

我在windows中安装npm的任何包时都遇到了同样的问题。固定的- **以管理员身份打开命令提示符,运行**/

1. NPM配置rm代理

2. NPM配置rm http -proxy

3.NPM安装npm@latest -g

MAC / Linux 1. Sudo NPM配置rm代理

2. Sudo NPM config rm http -proxy

3.Sudo NPM安装npm@latest -g

基本上这是npm的版本issue。请检查一下

这是个老问题了。

当我试图部署到heroku时,我遇到了这个问题,对我有效的修复是更新所使用的npm版本。我有版本2.x。我更新到3.x.x

use

npm config set registry http://registry.npmjs.org/

所以NPM请求HTTP url而不是https。

然后试试同样的NPM安装命令

在家里删除你的代理设置,在办公室网络上打开,这可能会让人恼火,但对我来说很管用:

npm config set proxy http://xxx.xxx.xxx.4:8080   
npm config set https-proxy http://xxx.xxx.xxx.4:8080

and

npm config rm proxy   
npm config rm https-proxy

你可能还需要指定代理服务器/端口,在某些环境中,代理的系统设置不足以让npm工作。

    npm config set proxy "http://your-proxy.com:80"