在使用 global-tunnel-ng 的旧应用中,initialize 在保留所选配置后,可能会故意移除受支持的 HTTP/HTTPS 代理变量。

原因是重复处理:其他库不应在模块已打补丁的 HTTP 路径之上再次应用环境代理。因此,缺少 process.env.http_proxy 并不代表代理已经停止。

通过 isProxying 检查是否已启用,通过 proxyConfig 查看保留的选择。不要记录包含账户的完整配置或 proxyUrl。

如果变量消失后后续客户端失败,请判断它使用的是已打补丁的 HTTP/HTTPS 代理、显式代理还是其他传输方式。自行读取环境的客户端可能需要自己文档化的代理输入。

移除 node_modules 中的删除代码会丢掉针对重复处理的保护,重装时还可能消失。应改为厘清传输的所有权。这是一个遗留包,其 Node 兼容性限制已有文档说明。在兼容的 Node 版本上,启动时的内置代理支持 是标准 HTTP 客户端的一种选择;自定义代理与调度器仍需各自的路径。

相关文章