在公司防火墙后如何使用npm?

node.js的包管理软件npm非常好用,命令简洁明了,在家里部署express时非常方便。但在公司安装时遇到了麻烦。npm install默认在指定的目录或文件中找不到要安装的包时,就会去https://registry.npmjs.org/查找并下载相应的包。npm config可以配置proxy和https-proxy,不过如果proxy需要用户名密码,npm就搞不出来了。在linux下配好proxy,用curl也能获取到包(不过需要用curl -k,否则还是说要验证,不知怎么搞定),但是用npm install时就是下载不下来。

 

所以只能先手工将express以及它的依赖包(connect、mime、qs等)下载下来,然后按照依赖顺序进行安装。问题又来了,如果要安装到global(如npm install -g express),即使先把依赖包安装到global了,npm仍然要连接registry下载依赖包,放到express自己的node_modules目录下。而如果安装到本地(npm install express),则只要当前环境下有依赖包就ok了,npm不再去registry下载。下午搞了一下午,最后还是跑到npm root -g目录下直接使用npm install express搞定的。

 

注意一点,如果当前目录下express以来的包不满足版本要求,express仍然会连到registry下载自己的包,所以安装依赖包时必须保证版本兼容,否则就白安了,我就是一来是下载connect等依赖包时都下载最新的,结果每次express仍然要去registry取包,最后才发现是依赖包版本不兼容的缘故。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值