Azure Event Hubs în Python: AMQP prin WebSockets printr-un proxy HTTP
Transmiteți dicționarul http_proxy al Event Hubs cu numele gazdei și portul întreg, alegând totodată transportul WebSocket AMQP.
Pentru un consumator Event Hubs în Python care folosește un proxy HTTP, configurați dicționarul de proxy al SDK-ului și transportul WebSocket la construirea clientului:
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,
},
)
Spațiul de nume, numele Event Hub și acreditarea sunt configurația de serviciu existentă a aplicației. Continuați cu apelurile sale de recepție și ciclul de viață obișnuit de închidere a clientului.
Acest dicționar descrie intermediarul în mod direct. Nu este harta schemelor de destinație http/https acceptată de Requests. Pentru un spațiu de nume public Event Hubs în care intermediarii publici sunt permis, lista de proxy HTTP oferă candidați pentru câmpurile nume de gazdă și port fără cont. Adăugați cheile username și password dacă este necesar contul de proxy vizat.
AMQP prin WebSockets folosește portul 443 al serviciului, în timp ce transportul AMQP obișnuit folosește 5671. Proxy-ul trebuie totuși să permită conexiunea rezultată către spațiul de nume Event Hubs.
O acreditare de tip token poate face cereri HTTP separate în timp ce obține tokenuri. Configurați transportul acceptat de aceasta după necesități atunci când și această cale de autentificare are nevoie de proxy.