global-tunnel-ng を使う古いアプリケーションでは、initialize が選択した設定を保持した後、対応する HTTP/HTTPS プロキシ変数を意図的に削除することがあります。

理由は二重処理です。別のライブラリが、モジュールがパッチを当てた HTTP 経路の上に環境プロキシを再度適用してはいけません。したがって process.env.http_proxy が無いことは、プロキシが止まったことを意味しません。

有効化は isProxying、保持された選択は proxyConfig で確認します。アカウントを含む完全な設定や proxyUrl をログに出さないでください。

変数が消えた後に後続のクライアントが失敗する場合は、パッチ済みの HTTP/HTTPS エージェント、明示的なエージェント、別のトランスポートのどれを使っているかを特定してください。環境を独自に読むクライアントは、自前の文書化されたプロキシ入力が必要かもしれません。

node_modules から削除コードを外すと二重処理の防止が失われ、再インストール時に消えることもあります。代わりにトランスポートの所有権を整理してください。これは Node 互換性の制限が文書化されたレガシーパッケージです。互換性のある Node バージョンでは、起動時の組み込みプロキシサポート が標準 HTTP クライアントの選択肢の一つです。カスタムエージェントとディスパッチャは引き続き独自の経路が必要です。

関連記事