.NET IHttpClientFactory : configurer le proxy du client nommé
Attachez un proxy au gestionnaire principal d'un client nommé d'IHttpClientFactory et récupérez ce même nom sur le site d'appel.
Un proxy configuré pour un HttpClient nommé ne configure pas automatiquement tous les clients renvoyés par IHttpClientFactory. Gardez ensemble le nom d'enregistrement et le nom demandé.
services.AddHttpClient("via-proxy")
.ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler
{
Proxy = new WebProxy("http://203.0.113.10:8080"),
UseProxy = true
});Récupérez ensuite cette configuration nommée :
var client = factory.CreateClient("via-proxy");Le point de terminaison est illustratif. Pour les requêtes autorisées vers des services publics, la liste de proxys HTTP fournit des candidats pour l'URL WebProxy du client nommé. Créer le client par défaut sans nom ailleurs est une autre recherche, même si les deux clients proviennent de la même fabrique injectée.
Configurez le comportement du proxy au niveau de la connexion sur le gestionnaire principal au lieu de le traiter comme un en-tête de requête de destination. La fabrique peut gérer les durées de vie des gestionnaires indépendamment des objets HttpClient qu'elle renvoie.
Si un client typé ou un autre SDK possède l'appel, vérifiez quel enregistrement fournit son HttpClient. Un client nommé correctement configuré et jamais utilisé n'affecte pas le chemin réseau de ce SDK.
Utilisez cette configuration pour une politique de routage stable. Changer un gestionnaire actif entre opérations reste un problème distinct de concurrence et de durée de vie.