Azure Notification Hubs .NET: vilken proxyinställning vinner?
Konfigurera NotificationHubSettings.Proxy eller en medskickad HTTP-transport, och beakta konstruktorns prioritet för HttpClient och MessageHandler.
I Notification Hubs .NET API med NotificationHubSettings kan en proxy anges när klienten byggs:
var settings = new Microsoft.Azure.NotificationHubs.NotificationHubSettings
{
Proxy = new System.Net.WebProxy("http://proxy.example:8080")
};
var hub = new Microsoft.Azure.NotificationHubs.NotificationHubClient(
hubConnectionString, hubName, settings);
Anslutningssträngen och hubbnamnet är fortfarande tjänstens konfiguration. En offentlig HTTP-slutpunkt från lista med HTTP-proxyservrar kan fylla WebProxy-adressen i standardbyggvägen.
Det finns en ordningsregel i den konstruktorn:
- En medskickad HttpClient används först.
- Annars skapar en medskickad MessageHandler HTTP-klienten.
- Annars skapar Proxy en proxykonfigurerad HttpClientHandler.
- Om inget skickas med skapar konstruktorn sin standard-HTTP-klient.
Om programmet redan skickar med HttpClient eller MessageHandler konfigurerar du den transportens proxy i stället för att förvänta dig att den separata Proxy-egenskapen åsidosätter den.
För ett proxykonto anger du autentiseringsuppgifter på WebProxy före bygget. De autentiserar mot mellanhanden, inte mot Notification Hub.
Äldre exempel nämner NotificationHubClientSettings. Matcha den inställningstyp och konstruktor som det installerade paketet exponerar, i stället för att blanda in det namnet i ett API som förväntar sig NotificationHubSettings.