npm使用socks代理

npm只支持http代理,不支持socks代理,如果要让npm使用socks进行代理,可以使用中间件将http代理转发给socks代理。这里使用nodejs环境上的一种将socks proxy转换成http proxy的工具http-proxy-to-socks。

安装http-proxy-to-socks

项目地址:https://github.com/oyyd/http-proxy-to-socks

提示:需要node版本为4及以上。

npm install -g http-proxy-to-socks

配置http-proxy-to-socks

提示: 为方便命令的输入,可将安装后的npm全局包路径加入系统环境变量

于shell中键入命令
hpts -s 127.0.0.1:1080 -p 1234

该命令会开启监听1234端口的http proxy,并遵循socks协议将请求发送到1080端口。请确保本地socks服务开启在相应的端口上以及待监听的端口未被占用。

所有配置项如下:

Options:
  -h, --help             output usage information
  -V, --version          output the version number
  -s, --socks [socks]    specify your socks proxy host, default: 127.0.0.1:1080
  -p, --port [port]      specify the listening port of http proxy server, default: 8080
  -c, --config [config]  read configs from file in json format
  --level [level]        log level, vals: info, error

配置npm代理

npm config set proxy=http://127.0.0.1:1234
npm config set https-proxy=http://127.0.0.1:1234

配置npm的http代理为刚才配置的本地http代理,这样npm发起的http请求便可通过http代理转发给socks代理来进行访问

其它

可以将命令写入bat 脚本中方便使用。如果使用vscode等开发工具,还可以将命令配置成任务方便使用。
以vscode为例
在项目.vscode文件夹里新建tasks.json文件并配置即可

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "hpts",
      "type": "shell",
      "command": "hpts -s 127.0.0.1:1234 -p 8080",
      "problemMatcher": []
    }
  ]
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值