O Node pode ler as variáveis de ambiente de proxy por conta própria quando seu suporte integrado é ativado na inicialização do processo. Os clientes disponíveis dependem da versão do runtime:

  • O fetch integrado suporta NODE_USE_ENV_PROXY desde o Node 24.0.0, com um backport para 22.21.0.
  • O suporte integrado de node:http e node:https por meio de seus agentes globais padrão começa em 24.5.0, também retroportado para 22.21.0.
  • O comutador de linha de comando --use-env-proxy começa em 24.5.0 e 22.21.0.

Em uma versão compatível, este exemplo de POSIX-shell define um proxy HTTP corporativo para os dois esquemas de destino:

export HTTP_PROXY=http://proxy.example.net:8080
export HTTPS_PROXY=http://proxy.example.net:8080
export NO_PROXY=localhost,127.0.0.1,.internal.example

node --use-env-proxy app.js

O nome HTTPS_PROXY seleciona a rota para destinos HTTPS; a URL ainda pode nomear um proxy HTTP. Ajuste NO_PROXY aos destinos que devem contorná-lo. Para um teste independente de URL pública sem conta de proxy, uma entrada HTTP da lista de proxies HTTP pode fornecer os dois valores de proxy enquanto os desvios internos necessários permanecem.

A forma de comutador de ambiente é uma alternativa:

export NODE_USE_ENV_PROXY=1
node app.js

Defina as variáveis de roteamento antes de iniciar o Node com qualquer uma das formas. Atribuir o sinalizador de ativação a process.env após a inicialização não executa novamente a inicialização de arranque.

Verifique qual cliente HTTP está realmente em uso

Os agentes globais padrão são relevantes para chamadas http e https que os utilizam. Uma biblioteca com seu próprio agente ou despachante personalizado controla seu próprio transporte; soquetes TCP brutos ficam fora deste recurso de roteamento HTTP. Para um cliente Undici compatível, um despachante ProxyAgent explícito é uma interface separada local ao cliente.

Se um aplicativo substitui um agente global, inspecione essa substituição antes de presumir que ela mantém o comportamento de proxy na inicialização. Da mesma forma, a configuração do registro do npm é um ajuste de ferramenta separado e não prova como o app.js encaminha solicitações.

Para um requisito corporativo de confiança TLS, configure a AC confiável apropriada para o runtime. Ativar o roteamento de proxy não exige desativar a verificação de certificados.

Artigos relacionados