Egy már Azure IoT Python SDK-t használó alkalmazásban az MQTT-transzportot és annak proxybeállításait együtt válassza ki. Ez a konfiguráció az MQTT-t WebSocketsen keresztül választja:

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
)

Az osztályok az SDK dokumentált felületéről származnak. Adja meg az eszköz kapcsolati karakterláncát az alkalmazás titkos konfigurációján keresztül, és cserélje le a példa proxyvégpontját. Egy nyilvánosan elérhető IoT Hub-végpont esetében, ahol nyilvános közvetítők engedélyezettek, a HTTP-proxylista jelölteket kínál a HTTP-gazdagéphez és -porthoz; erősítse meg, hogy a szolgáltatás engedélyezi az útvonalat a célállomáshoz. Ezek kifejezett SDK-beállítások; a böngészőben működő proxy vagy az operációs rendszer általános beállítása nem hozza létre az eszközügyfél útvonalát.

A kiválasztott proxytípushoz tekintse meg a ProxyOptions referenciát. Megkülönbözteti a HTTP-, SOCKS4- és SOCKS5-mezőket, és dokumentálja a típusra jellemző felhasználónév/jelszó viselkedést, beleértve a HTTP korlátait. Egy mező megléte nem garantál minden hitelesítési mechanizmust.

A proxyfiók és az eszközidentitás különböző szakaszokat engedélyez. Egy elutasított közvetítői csere leállíthatja a kapcsolatot, mielőtt a broker értékelné az eszköz hitelesítő adatait. A WebSockets kiválasztása a proxy cél- és hozzáférési korlátozásait is érvényben hagyja.

Jegyezze fel a kiválasztott transzportot, a célállomást és az első sikertelen szakaszt. Az SDK-ügyfélnek, a proxy megvalósításának és az engedélyezett útvonalnak egyeznie kell; sem egy sikeres böngészőkérés, sem az az általános állítás, hogy a SOCKS minden protokollt szállít, nem biztosítja ezt a kompatibilitást.

Kapcsolódó cikkek