为npm设置代理

Posted 童彪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为npm设置代理相关的知识,希望对你有一定的参考价值。

npm全称为Node Packaged Modules。它是一个用于管理基于node.js编写的package的命令行工具。其本身就是基于node.js写的,这有点像gem与ruby的关系。

在我们的项目中,需要使用一些基于node.js的javascript库文件,就需要npm对这些依赖库进行方便的管理。由于我们的开发环境由于安全因素在访问一些网站时需要使用代理,其中就包括npm的repositories网站,所以就需要修改npm的配置来加入代理。

下面简要介绍下npm的配置以及如何设置代理。

npm获取配置有6种方式,优先级由高到底。

  1. 命令行参数。 --proxy http://server:port即将proxy的值设为http://server:port

  2. 环境变量。 以npm_config_为前缀的环境变量将会被认为是npm的配置属性。如设置proxy可以加入这样的环境变量npm_config_proxy=http://server:port

  3. 用户配置文件。可以通过npm config get userconfig查看文件路径。如果是mac系统的话默认路径就是$HOME/.npmrc

  4. 全局配置文件。可以通过npm config get globalconfig查看文件路径。mac系统的默认路径是/usr/local/etc/npmrc

  5. 内置配置文件。安装npm的目录下的npmrc文件。

  6. 默认配置。 npm本身有默认配置参数,如果以上5条都没设置,则npm会使用默认配置参数。

针对npm配置的命令行操作

复制代码
   npm config set <key> <value> [--global]
   npm config get <key>
   npm config delete <key>
   npm config list
   npm config edit
   npm get <key>
   npm set <key> <value> [--global]
复制代码

在设置配置属性时属性值默认是被存储于用户配置文件中,如果加上--global,则被存储在全局配置文件中。

如果要查看npm的所有配置属性(包括默认配置),可以使用npm config ls -l

如果要查看npm的各种配置的含义,可以使用npm help config

为npm设置代理

$ npm config set proxy http://server:port
$ npm config set https-proxy http://server:port

如果代理需要认证的话可以这样来设置。

$ npm config set proxy http://username:password@server:port
$ npm config set https-proxy http://username:pawword@server:port

如果代理不支持https的话需要修改npm存放package的网站地址。

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

作者:黄博文@无敌北瓜 

 

 

留存

npm config set proxy http://@aiaproxyhk.aia.biz:8080

npm config set proxy https-proxy://@aiaproxyhk.aia.biz:8080

清除 npm config set proxy null

npm config set proxy http://aiaproxyhk.aia.biz:8080
npm config set https-proxy http://aiaproxyhk.aia.biz:8080

以上是关于为npm设置代理的主要内容,如果未能解决你的问题,请参考以下文章

Yarn: 一个新的JavaScript模块管理器

npm设置代理

给npm设置代理

如何给 NPM 设置代理

npm设置代理

app与jvm 反向代理时config的设置(用于在web页面显示npm(就如tomcat)产生的页面)