For en Event Hubs-forbruger i Python, der bruger en HTTP-proxy, skal du konfigurere SDK'ets proxy-ordbog og WebSocket-transporten, når klienten oprettes:

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

Namespace, Event Hub-navn og credential er applikationens eksisterende tjenestekonfiguration. Fortsæt med dens modtagelses-callbacks og den sædvanlige livscyklus for lukning af klienten.

Denne ordbog beskriver mellemleddet direkte. Det er ikke det http/https-destinationsskemakort, som Requests accepterer. For et offentligt Event Hubs-namespace, hvor offentlige mellemled er tilladte, leverer HTTP-proxy-listen kandidater til felterne for værtsnavn og port uden konto. Tilføj nøglerne username og password, hvis den påtænkte proxykonto kræves.

AMQP over WebSockets bruger tjenestens port 443, mens den almindelige AMQP-transport bruger 5671. Proxyen skal stadig tillade den resulterende forbindelse til Event Hubs-namespacet.

En token-credential kan foretage separate HTTP-anmodninger, mens den henter tokens. Konfigurer dens understøttede transport efter behov, når denne godkendelsesvej også har brug for proxyen.

Relaterede artikler