Azure IoT Hub .NET: ange HTTP-proxyn för RegistryManager
Skapa en Azure IoT Hub RegistryManager med HttpTransportSettings.Proxy från tjänst-SDK:n i stället för att förlita dig på en orelaterad enhetstransport.
Microsoft.Azure.Devices 1.38.1 exponerar en HTTP-proxy via sin HttpTransportSettings på tjänstsidan. Ange den när du skapar RegistryManager:
var proxy = new System.Net.WebProxy("http://proxy.example:8080");
var settings = new Microsoft.Azure.Devices.HttpTransportSettings
{
Proxy = proxy
};
var registry = Microsoft.Azure.Devices.RegistryManager
.CreateFromConnectionString(iotHubConnectionString, settings);
Använd denna registry-instans för de avsedda åtgärderna och behåll den under hela arbetsbelastningens livstid. Behåll den faktiska IoT Hub-anslutningssträngen: proxyadressen hör hemma i transportinställningarna. HTTP-proxylistan erbjuder kandidater för en offentlig HTTP-rutt som denna RegistryManager använder.
Om proxyn kräver inloggning ställer du in proxy.Credentials innan du bygger klienten. IoT Hub-anslutningssträngen autentiserar tjänstebegäran och tillhandahåller inte det mellanliggande kontot.
Denna HttpTransportSettings tillhör tjänstepaketet Microsoft.Azure.Devices. Enhetsklientens MQTT- och AMQP-anslutningar använder andra inställningar, så en lyckad registry-åtgärd bevisar bara att HTTP-tjänstrutten fungerade.