Azure IoT Hub .NET: ustawianie serwera proxy HTTP dla RegistryManager
Utwórz Azure IoT Hub RegistryManager przy użyciu HttpTransportSettings.Proxy z zestawu SDK usługi, zamiast polegać na niepowiązanym transporcie urządzenia.
Microsoft.Azure.Devices 1.38.1 udostępnia serwer proxy HTTP przez swoje HttpTransportSettings po stronie usługi. Podaj go podczas tworzenia 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);
Używaj tej instancji registry do zamierzonych operacji i zachowaj ją przez cały okres istnienia obciążenia. Zachowaj rzeczywisty ciąg połączenia IoT Hub: adres serwera proxy należy do ustawień transportu. Lista serwerów proxy HTTP oferuje kandydatów do publicznej trasy HTTP używanej przez ten RegistryManager.
Jeśli serwer proxy wymaga logowania, ustaw proxy.Credentials przed utworzeniem klienta. Ciąg połączenia IoT Hub uwierzytelnia żądanie usługi i nie zapewnia tego konta pośredniczącego.
To HttpTransportSettings należy do pakietu usługi Microsoft.Azure.Devices. Połączenia MQTT i AMQP klienta urządzenia używają innych ustawień, więc udana operacja registry dowodzi tylko, że trasa usługi HTTP działała.