Configurações de proxy no ASP.NET Core: launchSettings.json versus produção
Distinga os valores de proxy do perfil de inicialização de desenvolvimento do ambiente e do manipulador HTTP usados por um processo ASP.NET Core implantado.
Um valor de proxy em launchSettings.json pertence a um perfil de inicialização de desenvolvimento. Publicar a aplicação não transforma esse perfil no ambiente de um processo de trabalho do IIS, de um serviço ou de um contêiner.
Em caso de falha num ambiente implantado, inspecione o processo que realmente inicia a aplicação. O ambiente, a conta e o manipulador HTTP dele determinam quais entradas de proxy estão disponíveis.
| Onde funciona | O que comparar após a implantação |
|---|---|
| Perfil de inicialização da IDE | O ambiente do processo anfitrião |
| Sessão de usuário interativa | A conta de serviço e suas configurações de proxy |
| Um cliente HTTP criado manualmente | O manipulador usado pelo cliente injetado da aplicação |
A inicialização do proxy padrão do HttpClient moderno tem regras de ambiente e de configuração do sistema específicas da plataforma. Um manipulador configurado explicitamente pode substituir esses padrões. Com IHttpClientFactory, verifique o registro do manipulador primário do cliente nomeado e o nome obtido no local da chamada. Verifique ambas as entradas antes de concluir que um arquivo de configuração foi ignorado.
Exemplos antigos de system.net/defaultProxy do .NET Framework descrevem outro modelo de configuração. Não cole essa seção num arquivo de implantação moderno nem presuma que toda implementação HTTP do .NET a consome. Numa implantação IIS, o módulo ASP.NET Core também tem um mecanismo suportado de configuração do ambiente do processo; preserve o restante dessa configuração de hospedagem ao adicionar valores.
Registre se a variável esperada existe sem publicar seu valor completo que contém credenciais. Depois confirme que o cliente que faz a solicitação com falha usa essa fonte. Um inicializador configurado corretamente não consegue reparar um cliente que usa deliberadamente outra rota.