Azure Event Hubs in Python: AMQP via WebSockets deur 'n HTTP-proxy
Gee die Event Hubs-http_proxy-woordeboek met gasheernaam en heelgetalpoort deur terwyl jy die WebSocket-AMQP-vervoer kies.
Vir 'n Python-verbruiker van Event Hubs wat 'n HTTP-proxy gebruik, stel die SDK se proxywoordeboek en WebSocket-vervoer op wanneer die kliënt gebou word:
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,
},
)
Die naamruimte, die Event Hub-naam en die geloofsbrief is die toepassing se bestaande dienskonfigurasie. Gaan voort met die ontvangs-terugroepe en die gewone lewensiklus waarin die kliënt gesluit word.
Hierdie woordeboek beskryf die tussenparty direk. Dit is nie die http/https-bestemmingskemakaart wat Requests aanvaar nie. Vir 'n openbare Event Hubs-naamruimte waar openbare tussenpartye toegelaat word, bied die HTTP-proxylys kandidate vir die gasheernaam- en poortvelde sonder rekening. Voeg gebruikernaam- en wagwoordleutels by as die beoogde proxyrekening vereis word.
AMQP oor WebSockets gebruik die diens se poort 443, terwyl die gewone AMQP-vervoer 5671 gebruik. Die proxy moet steeds die gevolglike verbinding na die Event Hubs-naamruimte toelaat.
'n Token-geloofsbrief kan afsonderlike HTTP-versoeke maak terwyl dit tokens verkry. Stel die vervoer wat dit ondersteun soos vereis wanneer daardie verifikasiepad ook die proxy nodig het.