Azure Event Hubs v Pythonu: AMQP prek WebSockets skozi HTTP proxy
Posredujte slovar http_proxy za Event Hubs z imenom gostitelja in celoštevilskim vratom, medtem ko izberete prenos WebSocket AMQP.
Za porabnika Event Hubs v Pythonu, ki uporablja HTTP proxy, ob gradnji odjemalca nastavite proxy slovar SDK-ja in prenos WebSocket:
from azure.eventhub import EventHubConsumerClient, TransportType
client = EventHubConsumerClient(
fully_qualified_namespace=namespace,
eventhub_name=eventhub_name,
consumer_group='$Default',
credential=credential,
transport_type=TransportType.AmqpOverWebsocket,
http_proxy={
'proxy_hostname': 'proxy.example',
'proxy_port': 8080,
},
)
Imenski prostor, ime Event Huba in poverilnica so obstoječa konfiguracija storitve v aplikaciji. Nadaljujte z njenimi povratnimi klici za sprejemanje in običajnim življenjskim ciklom zapiranja odjemalca.
Ta slovar neposredno opisuje posrednika. To ni zemljevid ciljnih shem http/https, ki ga sprejema Requests. Za javni imenski prostor Event Hubs, kjer so dovoljeni javni posredniki, seznam HTTP proxyjev ponuja kandidate za polji imena gostitelja in vrat brez računa. Dodajte ključe username in password, če je potreben predvideni proxy račun.
AMQP prek WebSockets uporablja vrata 443 storitve, medtem ko običajni prenos AMQP uporablja 5671. Proxy mora še vedno dovoliti nastalo povezavo do imenskega prostora Event Hubs.
Poverilnica žetona lahko med pridobivanjem žetonov izvaja ločene zahteve HTTP. Če tudi ta pot preverjanja pristnosti potrebuje proxy, nastavite njen podprti prenos po potrebi.