快速安装错误

时间:2013-03-19 11:24:54

标签: node.js express npm

当我尝试通过Node安装Express时,它会显示以下错误:

D:\NodeJS\express>npm install express
npm http GET https://registry.npmjs.org/express
npm http GET https://registry.npmjs.org/express
npm http GET https://registry.npmjs.org/express
npm ERR! Error: tunneling socket could not be established, cause=getaddrinfo ENOENT
npm ERR!     at ClientRequest.onError (C:\Program Files\nodejs\node_modules\npm\node_modules\request\tunnel.js:161:17)
npm ERR!     at ClientRequest.g (events.js:192:14)
npm ERR!     at ClientRequest.EventEmitter.emit (events.js:96:17)
npm ERR!     at CleartextStream.socketErrorListener (http.js:1394:9)
npm ERR!     at CleartextStream.EventEmitter.emit (events.js:96:17)
npm ERR!     at Socket.onerror (tls.js:1318:17)
npm ERR!     at Socket.EventEmitter.emit (events.js:126:20)
npm ERR!     at Socket.connect.require.lookup.addressType (net.js:699:16)
npm ERR!     at process.startup.processNextTick.process._tickCallback (node.js:244:9)
npm ERR! If you need help, you may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>

npm ERR! System Windows_NT 6.1.7601
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "express"
npm ERR! cwd D:\NodeJS\express
npm ERR! node -v v0.8.17
npm ERR! npm -v 1.2.0
npm ERR! code ECONNRESET
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     D:\NodeJS\express\npm-debug.log
npm ERR! not ok code 0

D:\NodeJS\express>

我也尝试过-g安装,但它无法正常工作! 请帮帮我......

2 个答案:

答案 0 :(得分:1)

看起来npm无法连接到中央存储库。这可能是因为您的笔记本电脑出现了一般连接问题,但您是在这里制作的:)或者可能是因为您机器上的证书颁发机构与npm使用的证书不匹配。

确保您可以在没有任何证书(SSL安全)警告的情况下从浏览器访问https://registry.npmjs.org/express。如果这不是原因,您应该更新您的证书颁发机构。

Windows证书根目录有一个Windows XP更新。

答案 1 :(得分:1)

对于那些设置Node.js并使用npm的人。我认为Web代理设置就像unix世界的其他部分一样,需要我设置HTTP_PROXY和HTTPS_PROXY环境变量。

打开命令提示符或终端会话并运行以下命令以配置npm以使用Web代理。这些命令使用proxy.companyname.com作为地址,使用8080作为端口。

C:&gt; npm config set proxy http://proxy.companyname.com:8080 C:&gt; npm config set https-proxy http://proxy.companyname.com:8080