Во апликација што веќе го користи Azure IoT Python SDK, изберете го MQTT транспортот и неговите прокси опции заедно. Оваа конфигурација избира MQTT преку WebSockets:

proxy = ProxyOptions(proxy_type='HTTP',
                     proxy_addr='203.0.113.10', proxy_port=8080)
client = IoTHubDeviceClient.create_from_connection_string(
    connection_string, websockets=True, proxy_options=proxy
)

Класите доаѓаат од документираниот интерфејс на SDK. Обезбедете ја низата за поврзување на уредот преку тајната конфигурација на апликацијата и заменете ја примерната прокси крајна точка. За јавно достапна крајна точка на IoT Hub каде што се дозволени јавни посредници, списокот со HTTP прокси сервери нуди кандидати за HTTP домаќин и порта; потврдете дека услугата ја дозволува рутата до одредиштето. Овие се експлицитни SDK опции; прокси што работи во прелистувач или општа поставка на оперативниот систем не ја воспоставува рутата на клиентот на уредот.

Проверете ја референцата ProxyOptions за избраниот тип на прокси. Таа ги разликува полињата HTTP, SOCKS4 и SOCKS5 и го документира однесувањето на корисничко име/лозинка специфично за типот, вклучително ограничувањата за HTTP. Присуството на поле не гарантира секој механизам за автентикација.

Прокси сметката и идентитетот на уредот авторизираат различни фази. Одбиена размена преку посредник може да ја запре врската пред брокерот да ја оцени акредитивот на уредот. Изборот на WebSockets исто така ги остава на сила ограничувањата на проксито за одредиште и пристап.

Забележете го избраниот транспорт, одредиштето и првата неуспешна фаза. Клиентот на SDK, имплементацијата на проксито и дозволената рута мора да се совпаѓаат; ниту успешно барање од прелистувач, ниту општа тврдење дека SOCKS пренесува секој протокол не ја обезбедуваат таа компатибилност.

Поврзани статии