npm não está funcionando - “leia ECONNRESET”


164

Estou tendo um problema com o npm, não consigo instalar nada. Aqui estão as mensagens de erro:

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

Alguma idéia de por que isso? Aqui estão minhas configurações de rede e parece que não tenho nenhum proxy configurado. Eu também desabilitei todos os firewalls.

insira a descrição da imagem aqui


Você pode visitar esta página em um navegador registry.npmjs.org/yo ?
thefourtheye

Parece que o certificado SSL expirou!
Kushagra Gour

@thefourtheye Sim, eu posso visitar esse link
Omar

O npm não instala nada. Este exclusivo is not problema na instalação expressa
Omar

Pode ser necessário verificar C: \ Windows \ system32 \ npm-debug.log, esse arquivo terá informações mais precisas para resolver seu problema.
Nanda Kumar

Respostas:


327

usar

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

para que o npm solicite httpURL em vez de https.

e tente o mesmo npm installcomando


19
você também pode fornecer algumas explicações, será muito útil.
Rishul Matta

31
Essa "correção" é suscetível a ataques do tipo man-in-the-middle. Eu não usaria isso para produção.
precisa

3
O problema pode ser facilmente que você está sendo bloqueado nesse site pelo firewall / proxy do seu ISP ou da empresa. Usar o método acima é mais rápido e fácil, mas também é inseguro, pois não verifica se você está conectado ao site certo. Para verificar se você está sendo bloqueado, basta ir para registry.npmjs.org no seu navegador. Você deve receber algum texto de volta.
Marlon

1
haha .... Eu estava tentando superar isso de vez em quando por meses. Eu estava apenas desativando a VPN, pegando pacotes e fazendo logon novamente. Obrigado por isso. Em todos os outros, o problema é simplesmente o endereço / porta do proxy estar errado ou (nesse caso) o proxy não está configurado para escutar o tráfego HTTPS.
voidzero

1
Sei que pode não ser seguro, mas vamos lá - TENTEI TUDO para me livrar do erro ECONNRESET ao criar um novo aplicativo angular 4 via Angular CLI e essa solução só funcionou. Depois de criar um novo projeto, você pode voltar para https. Enfim @mithunsatheesh obrigado mais uma vez.
born2fr4g

38

Convém verificar as configurações de proxy do NPM e talvez removê-las.

npm config get proxy
npm config rm proxy
npm config rm https-proxy

Pode-se esperar que uma nova instalação do NodeJS + NPM não tenha um proxy configurado. Curiosamente, o meu veio com um proxy definido, apontando para um IP e a porta 3128. A remoção do proxy fez o truque.


Eu estava tentando instalar o jquery no projeto Angular usando o cmd - npm install jquery. Mas ocorreu um erro de proxy que agora é resolvido ao tentar esta solução.
Mohammed Amen

15

Você também pode precisar especificar o servidor / porta proxy; em alguns ambientes, as configurações do sistema para proxy não são suficientes para o funcionamento do npm.

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

11

Remova as configurações de proxy em casa e ative nas redes do Office. Isso pode ser irritante, mas funcionou para mim:

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

e

npm config rm proxy   
npm config rm https-proxy

O último bit funcionado para mim - eu verifiquei meu arquivo .npmrc eo antigo procurador https ainda estava lá depois de remover o proxy
Jayx

isso está funcionando, mas como desconfigurar ou reconfigurar para o padrão, sempre que for para outra rede sem proxy?
DV Yogesh

9

Isso pode ser causado pela instalação de qualquer coisa com o npm usando sudo- isso faz com que os arquivos no cache sejam de propriedade da raiz, resultando nesse problema. Você pode corrigi-lo executando:

sudo rm -rf ~/.npm

para remover o cache. Em seguida, tente o que você estava fazendo novamente, certificando-se de nunca usá sudo-lo npm(ou o problema pode voltar).

Muitas informações: o npm gera um erro sem o sudo


esqueci a necessidade de elevar ao administrador para executar npm -g update(como eu fiz para instalá-lo). Obrigado.
George #

6
Como isso causa ECONNRESETexatamente? Você está certo que sudopode quebrar as coisas de maneiras novas, mas fazer com que o servidor de registro interrompa a conexão é um pouco inacreditável.
Zigg 29/04


3

As três coisas para fazer o npm funcionar bem dentro da rede proxy.

Esse registro npm definido, por padrão, pode levar https.

Registro do conjunto de configurações npm " http://registry.npmjs.org/ "

O segundo é o proxy de dois conjuntos no seu sistema. Se sua organização usa proxy ou você.

npm config set proxy " http: // nome do usuário: senha @ proxy-url: proxy-port "

npm config set https-proxy " http: // nome do usuário: senha @ proxy-url: proxy-port "

Você também pode verificar se eles estão definidos ou não,

a configuração do npm obtém o proxy https

para todos os valores.


Ele não mostra nenhum erro, mas a instalação está presa na linha - loadRequestedDeps: sill install loadAllDepsIntoIdealTree
RSB

Essa é outra questão. O problema de proxy do seu foi resolvido. Que isto curta sua coisa stackoverflow.com/questions/40874237/…
Himanshu sharma

2

Eu tentei quase todos os métodos publicados aqui e em outras páginas, mas não funcionou. Aqui estão os comandos que eu executei em ordem, que eu encorajo você a tentar, porque funcionou para muitas pessoas (mas não para mim):

  • npm config rm proxy
  • npm config rm https-proxy
  • npm config set https-proxy https://username:password@proxy.company.com:6050
  • npm config set proxy http://username:password@proxy.company.com:6050
  • npm config set registry http://registry.npmjs.org/

E, em seguida, tentando instalar o pacote npm install -g express, mas falhou.

No entanto, quando tentei executá- npm install npm@latest -glo milagrosamente executado e instalado bem!
Então correr npm install -g expressnovamente funcionou perfeitamente bem também.

TL; DR : atualizar o npm para a versão mais recente resolveu o problema (atualmente 6.0.1)


1

No trabalho, tive que carregar meu navegador e navegar em uma página da web (o que me autentica no nosso filtro da web). Então tentei novamente o comando e ele funcionou com sucesso.


2
Não tenho 100% de certeza se foi isso que me ajudou, ou apenas uma coincidência, mas navegar para o Registry.npmjs.org no Firefox de alguma forma ajudou o npm install a funcionar da próxima vez. Eu não tenho nenhum tipo de software de filtro da web.
TalkLittle

1

Esta é uma pergunta antiga, mas de qualquer maneira.

Eu tive esse problema, quando estava tentando implantar no heroku, e a correção que funcionou para mim foi atualizar a npmversão usada. Eu tinha a versão 2.xx e atualizei para 3.xx


1

Você também pode encontrar esse erro se tiver um token de portador salvo que agora é inválido. Encontrei isso ao usar um repositório particular onde as contas foram apagadas e redefinidas, invalidando os tokens. Embora seu repo possa não exigir autenticação, se você tiver um token de um login anterior, ele será passado e, se for inválido, sua conexão será fechada.

Você pode resolver isso fazendo login novamente com o novo nome de usuário e senha ou, presumivelmente, simplesmente fazendo logout via npm.


1

Eu não queria mudar para http para o registro, o que funcionou para mim foi fazer o downgrade da versão mais recente do Node para a versão LTS (a partir de agora, 6.x).


1

Eu tive o problema com o npm lançando esse erro.

Então, basicamente, sempre que o erro foi gerado, usei a instalação manual
do git ou esperei e instalei a versão especificada, como:

npm install resolve@^1.1.6

ao correr sozinho:

npm install resolve

não funcionou.

Atualizei o node.js das 7 para as 8 e a instalação do npm ocorre sem problemas.

Eu acho que talvez a versão 7 tenha causado esse problema desde que @luschn rebaixou para 6, então ele não usou 7 também.

Talvez o próprio registro esteja retornando erros sem mostrar problemas em suas páginas de status, porque depois de algum tempo eu poderia instalar este pacote de quebra e prosseguir com npm installa instalação do restante.


1

Eu tive o mesmo problema na minha rede doméstica local sem proxy. Outras respostas neste tópico não funcionaram para mim. O que acabei fazendo foi usar o yarnque pode ser usado de forma intercambiável com npm:

yarn add

Até hoje não sei por que meu NPM ainda não funciona. Tenho certeza de que há um problema no meu Wi-Fi, porque quando eu me conecto à Internet LTE transmitida pelo meu smartphone npm installfunciona novamente. Provavelmente tem algo a ver com as configurações do roteador (os problemas começaram quando eu atualizei a velocidade da minha Internet e o provedor ISP substituiu o meu roteador antigo por um novo).


1

Eu tive o mesmo problema ao tentar executar npmno sistema emulado no Oracle VirtualBox . Eu o resolvi adicionando o endereço DNS do Google nas propriedades do adaptador de rede.

Propriedades do adaptador de rede> Propriedades IPv4> Endereço DNS preferencial: 8.8.8.8.


1

Eu tive o mesmo problema, mas nenhuma dessas soluções funcionou corretamente. Finalmente, instalei pacotes via yarn , que é compatível com o npm. Conforme o site oficial:

A migração do npm deve ser um processo bastante fácil para a maioria dos usuários. O Yarn pode consumir o mesmo formato package.json que o npm e pode instalar qualquer pacote a partir do registro npm.

Basta instalar o fio e, em seguida, execute a instalação usando o seguinte comando, o equivalente ao npm installno fio:

yarn install

Leia mais em - Yarn: Migrating from npm .


1

npm config rm proxy

npm config rm https-proxy

funciona para mim!


1

Eu tive o mesmo problema no Windows ao instalar qualquer pacote a partir do npm. Corrigido isso com - ** abrir o prompt de comando como administrador e executar esses 3 comandos ** /

1. npm config rm proxy

2. npm config rm https-proxy

3. npm install npm @ latest -g

PARA MAC / LINUX
1. sudo npm config rm proxy

2. sudo npm config rm https-proxy

3. sudo npm install npm @ latest -g

Basicamente, essa era a versão isuue com o npm. Por favor, verifique sua preocupação



1

O firewall da nossa empresa irá parar de instalar o nó, portanto, conectar-se à rede pessoal e instalar, funcionou para mim.


1

Eu achei "npm config edit" mais útil para atualizar as entradas para https-proxy, proxy, registro

Eu fiz algo parecido com isto

  • lista de configuração npm
  • npm config edit (abre no vi)
  • Edite ou defina as entradas de configuração para https-proxy, proxy, registro
  • instalação npm

1

Apenas no caso ... simplesmente tentar mais uma vez funcionou para mim. Ele poderia ser apenas um problema de conexão temporária.


1

Se você estiver usando o Windows, deverá acompanhar as Configurações avançadas do sistema para verificar os envios declarados por lá, observe que a configuração do proxy pode estar dentro de variáveis ​​de ambiente, como na figura abaixo:

Windows env vars

Portanto, se seu servidor proxy não estiver disponível ou estiver bloqueando o tráfego do npm, você poderá perceber o erro mencionado acima neste tópico. Talvez você não precise de nenhum proxy, neste caso, apenas remova essas variáveis ​​env HTTP_PROXY.

Eu havia desativado todas as configurações de proxy nas configurações do Windows e do npm, no entanto, o npm ainda estava recebendo erros de tempo limite e conexão durante o download de recursos; então, descobri que ainda havia uma configuração de proxy nas variáveis ​​env, o que causava todo o problema.



Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.