node.js和npm在Windows 7 64位版本中没有networking访问权限

注意:对于有这个问题的任何人,我尝试了所有的build议和所有的研究。 最后,我格式化了硬盘,并重新安装了窗户。 尽pipe从一开始,这是一个全新的安装,但是一些windows安装似乎根本不适用于节点。 据我所知,这是唯一的解决办法。

所以开始,我已经find了类似的问题: 基本Node.js的例子不工作在Windows 7似乎是同样的问题,但没有解决scheme。 我也发现在线论坛post没有解决scheme,但很多人发布相同的问题。

Node.exenpm都似乎没有networking访问权限。 npm install发送获取请求,永远不会得到回应。 要访问MongoDB的节点脚本永远不会发送连接请求。 我从旧机器复制这个代码到我的新机器。 这是我在新机器上的第一件事。 旧机器运行Windows 7 64家庭高级版和新的Windows 7 64终极。 我试过所有的兼容模式,以pipe理员身份运行,禁用Windows防火墙,没有杀毒软件,我卸载/重新安装,我试过改变版本,即使从旧电脑的版本是相同的。 我search了stackoverflow和互联网,并find了其他人的问题,但没有解决scheme。 我有一个可以成功运行节点的虚拟盒ubuntu虚拟机,但是我希望能够在没有虚拟机的情况下运行,如果可能的话,我似乎无法find任何问题的原因。 即使两台计算机之间的OEM软件几乎相同,因为旧的是一个Alienware的M15X和新的M14X。 任何帮助表示赞赏。

编辑:

我正在使用最新版本(0.6.10)。 运行npm install并让它挂起后,我使用了netstat并在node.exe下得到了以下结果:

  [node.exe] TCP 10.20.21.225:49690 ec2-107-20-159-167.compute-1.amazonaws.com:https ESTABLISHED [node.exe] TCP 10.20.21.225:49691 nuq04s08-in-f31.1e100.net:https TIME_WAIT TCP 10.20.21.225:49692 fa-in-f94.1e100.net:https TIME_WAIT TCP 10.20.21.225:49693 nuq04s08-in-f19.1e100.net:http TIME_WAIT TCP 10.20.21.225:49696 nuq04s08-in-f25.1e100.net:http TIME_WAIT TCP 10.20.21.225:49702 nuq04s08-in-f6.1e100.net:http TIME_WAIT TCP 10.20.21.225:49703 nuq04s08-in-f25.1e100.net:http TIME_WAIT TCP 10.20.21.225:49704 nuq04s08-in-f25.1e100.net:http TIME_WAIT TCP 10.20.21.225:49706 nuq04s08-in-f26.1e100.net:http TIME_WAIT TCP 10.20.21.225:49707 nuq04s08-in-f26.1e100.net:http TIME_WAIT TCP 10.20.21.225:49708 nuq04s08-in-f26.1e100.net:http TIME_WAIT TCP 10.20.21.225:49709 nuq04s08-in-f26.1e100.net:http TIME_WAIT 

现在,当我在node.js主页上运行示例服务器时,我无法在浏览器中获得hello world,但是连接在netstat中:

  [node.exe] TCP 127.0.0.1:1337 Robbie-PC:49805 ESTABLISHED [node.exe] TCP 127.0.0.1:7789 Robbie-PC:49158 ESTABLISHED 

但是当我等一会儿,它变成:

  [node.exe] TCP 127.0.0.1:1337 Robbie-PC:49805 CLOSE_WAIT [node.exe] TCP 127.0.0.1:7789 Robbie-PC:49158 ESTABLISHED 

编辑2:

所以我试图禁用所有其他连接..没有运气。 然后我尝试在eclipse中使用debugging器,甚至eclipse也找不到vm的debugging器在端口5858上广播。它实际上只是没有连接。 所以除非有人除了清除硬盘驱动器和重新安装Windows之外最终还有其他的想法,那么我认为这台计算机将作为DOA回归到Alienware。 让希望下一个没有这个问题。 感谢所有在评论中提出build议的人以及所有为我调查解决scheme的人。

如果您在公司networking后面,可能需要在要设置的节点上进行代理configuration。 它运行着这样的东西

 npm config set proxy http://proxy.company.com:8080 npm config set https-proxy http://proxy.company.com:8080 

将代理公司名称replace​​为您的networking使用的任何名称。

使用相同的操作系统我没有这个问题,但我已经有问题下载一些包(我想节点的MySQL)。 为了解决这个问题,我不得不从github下载源代码,将其解压到node_modules存储库中,并将其重命名为“mysql”。

现在我可以使var mysql = require('mysql');

也许甚至尝试cygwin。 它从纯粹的虚拟Linux退后一步,并在Windows 7上运行。就个人而言,我有Cygwin和Windows 7安装node.js在64位(不是最终)。

由于写保护和安全设置,我不得不将节点安装到“程序文件”之外的目录。 仍然必须以pipe理员身份运行命令控制台,以确保所有的工作。 Cygwin没有这些问题。