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 แยกต่างหากขณะรับโทเค็น กำหนดค่าการขนส่งที่รองรับตามความจำเป็นเมื่อเส้นทางการตรวจสอบสิทธิ์นั้นต้องใช้พร็อกซีด้วย