33

我尝试使用以下方法安装 node.js 模块:

npm install express

但我收到此错误:

npm http GET https://registry.npmjs.org/express
npm ERR! TypeError: Request path contains unescaped characters.
npm ERR!     at Agent.request (_http_agent.js:264:11)
npm ERR!     at TunnelingAgent.exports.request (http.js:52:22)
npm ERR!     at TunnelingAgent.createSocket (/usr/local/lib/node_modules/npm/node_modules/request/node_modules/tunnel-agent/index.js:117:25)
npm ERR!     at TunnelingAgent.createSecureSocket [as createSocket] (/usr/local/lib/node_modules/npm/node_modules/request/node_modules/tunnel-agent/index.js:184:41)
npm ERR!     at TunnelingAgent.addRequest (/usr/local/lib/node_modules/npm/node_modules/request/node_modules/tunnel-agent/index.js:80:8)
npm ERR!     at new ClientRequest (_http_client.js:112:16)
npm ERR!     at Agent.request (_http_agent.js:279:10)
npm ERR!     at Object.exports.request (https.js:130:22)
npm ERR!     at Request.start (/usr/local/lib/node_modules/npm/node_modules/request/index.js:594:30)
npm ERR!     at Request.end (/usr/local/lib/node_modules/npm/node_modules/request/index.js:1186:28)
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 Linux 3.6.11-7.fc16.x86_64
npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "install" "express"
npm ERR! cwd /usr/local/src/node
npm ERR! node -v v0.11.5-pre
npm ERR! npm -v 1.3.5
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /usr/local/src/node/npm-debug.log
npm ERR! not ok code 0

可能正在发生我使用代理我以这种方式设置它以允许从我的网络之外的 ips 下载

export https_proxy='http://172.21.0.12:3128'

我希望你能帮帮我

4

2 回答 2

59

从命令行设置代理。

npm config set proxy http://proxydomain:port/

如果仍然发生错误,请继续尝试下一步。

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

这些对我有用。(参考http://sushichop.blogspot.jp/2013/01/npm-install.html

于 2013-08-02T09:03:04.163 回答
2

虽然已经很晚了,但在 Linux 上更新 nodejs(到 4.1.1)和 npm(到 1.4.x 之类的东西)之后,我也遇到了这个问题。

我已经尝试了建议的解决方案,但更改注册表项在所有情况下都没有帮助。最后,决定重新安装 npm,我找到了这个更新源 [on npm github][1]

curl -L https://www.npmjs.org/install.sh | sh

它将我的 npm 更新到 3.3.8 并且所有相关的软件包安装问题都被吹走了。

于 2015-10-19T14:03:20.080 回答