Azure Event Hubs با Python: AMQP روی WebSockets از طریق پروکسی HTTP
دیکشنری http_proxy مربوط به Event Hubs را همراه با نام میزبان و پورت صحیح عبور دهید و همزمان انتقال WebSocket AMQP را انتخاب کنید.
برای یک مصرفکننده Event Hubs در Python که از پروکسی HTTP استفاده میکند، هنگام ساخت کلاینت دیکشنری پروکسی SDK و انتقال 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,
},
)
فضای نام، نام Event Hub و اعتبارنامه همان پیکربندی سرویس موجود برنامه هستند. سپس با callbackهای دریافت و چرخه عمر معمول بستن کلاینت ادامه دهید.
این دیکشنری واسطه را بهطور مستقیم توصیف میکند. این همان نقشه طرحهای مقصد http/https که Requests میپذیرد نیست. برای فضای نام عمومی Event Hubs که در آن واسطههای عمومی مجاز هستند، فهرست پروکسی HTTP نامزدهایی برای فیلدهای نام میزبان و پورت بدون حساب فراهم میکند. اگر حساب پروکسی مورد نظر لازم است، کلیدهای username و password را اضافه کنید.
AMQP روی WebSockets از پورت 443 سرویس استفاده میکند، در حالی که انتقال معمول AMQP از 5671 استفاده میکند. پروکسی هنوز باید اتصال حاصل به فضای نام Event Hubs را مجاز بداند.
یک اعتبارنامه توکن میتواند هنگام دریافت توکنها درخواستهای HTTP جداگانه انجام دهد. وقتی این مسیر احراز هویت نیز به پروکسی نیاز دارد، انتقال پشتیبانیشده آن را مطابق نیاز پیکربندی کنید.