[nodejs] 运行的nodejs代码走代理连接外网

本文介绍了如何在nodejs项目中,由于网络过滤导致无法访问外部服务,通过修改rest-facade模块并配置系统代理,成功实现服务调用的解决方案。涉及代码调整和环境变量设置,以确保在npminstall更新后仍保持功能正常。

1、背景:nodejs后端调用三方服务sdk,运行主机在公司内外有网址过滤,无法连接到三方服务地址,设置代码走代理后服务调用正常。

2、方法:

    修改node_modules\rest-facade\src\Client.js代码,让网络连接能够走系统代理

    if (proxy) {
      req = req.proxy(proxy);
    }

修改成

    if (proxy) {
      req = req.proxy(proxy);
    } else {
      req = req.proxy();
    }

修改之后设置代理环境变量或者执行环境变量,重新执行程序调用服务正常。

set http_proxy=http://xxx

set https_proxy=https://xxx

如果执行npm install的话,可能会更新node_modules代码,需要重新修改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值