cnpm安装时报错timeout

问题描述:

  1. 用cnpm安装报错:
Error: connect ETIMEDOUT at TCPConnectWrap.afterConnect [as oncomplete] (net.js
  1. 于是改了cnmp的代理为proxy=http://xxxxx
    出现报错:(以下为大概摘要)
Get /binary-mirror-config/latest from https://registry.npm.taobao.org error: 
ConnectionTimeoutError: Connect timeout for 5000ms, 
GET https://registry.npmjs.com/binary-mirror-config/latest -2 (connected: false, keepalive socket: false, agent status: {
     "createSocketCount":4,"createSocketErrorCount":0,"closeSocketCount":4,"errorSocketCount":0,"timeoutSocketCount":0,"requestCount":0,"freeSockets":{
     },"sockets":{
     },"requests":{
     }}, socketHandledRequests: 1, socketHandledResponses: 0) ……
Error:Cannot find moduld ‘bug-versions/package.json’
  1. 于是用npm卸载了cnpm,发现npm文件夹都不见了,于是重装了node.js。
    重装cnpm发现该命令不可用,于是添加了系统变量(过于苦逼安装的盘和路径名还不搭了,希望大家直接装下来就能用吧)经过重重苦难,cnpm可以-version了。
  2. 然后cnpm安装又出现2的报错。
  3. 于是就觉得会不会是bug-versions/package.json没有的问题,执行了
npm install -g bug-versions -d --save

之后报错又回到了最初的起点1.的报错,5555~


原因分析:

1.报错的内容里边可以找到使得访问超时的IP,其实就是2.设置的代理的IP。使用 tracert 命令(就是一步一步追踪它的跳转tracert 192.168.xx.xx(你timeout的IP))发现那个IP确实无法访问。用cnpm config get proxy查看了可以正常使用cnpm安装的同学的代理,发现竟然是null呀。


解决方案:

cnpm config set proxy=null 

然后就能用了,根本不是什么设置超时时间变长就能解决的问题。总共吧,也就花了七八个小时解决这个问题吧,希望能帮上同样遇到这个问题的苦逼的小朋友。

你可能感兴趣的:(Java全栈,node.js)