Per a un consumidor d'Event Hubs en Python que fa servir un proxy HTTP, configura el diccionari de proxy del SDK i el transport WebSocket en construir el client:

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,
    },
)

L'espai de noms, el nom de l'Event Hub i la credencial són la configuració de servei existent de l'aplicació. Continua amb les seves devolucions de trucada de recepció i el cicle habitual de tancament del client.

Aquest diccionari descriu l'intermediari directament. No és el mapa d'esquemes de destinació http/https que accepta Requests. Per a un espai de noms públic d'Event Hubs on es permeten intermediaris públics, la llista de proxys HTTP forneix candidats per als camps de nom d'amfitrió i port sense compte. Afegeix les claus username i password si cal el compte de proxy previst.

AMQP sobre WebSockets utilitza el port 443 del servei, mentre que el transport AMQP ordinari utilitza el 5671. El proxy encara ha de permetre la connexió resultant cap a l'espai de noms d'Event Hubs.

Una credencial de testimoni pot fer peticions HTTP separades mentre obté testimonis. Configura el transport que admet segons calgui quan aquest camí d'autenticació també necessita el proxy.

Articles relacionats