Azure Service Bus Java: استفاده از AMQP روی WebSockets با یک پروکسی
کلاینت پیامرسانی Java سرویسباس آژور را با AMQP روی WebSockets و تنظیمات پروکسی کتابخانه AMQP پیکربندی کنید.
کلاینت پیامرسانی مدرن Java در Azure Service Bus از AMQP استفاده میکند. سازندهٔ آن هنگام پیکربندی پروکسی به AMQP_WEB_SOCKETS نیاز دارد.
با azure-messaging-servicebus 7.18.0، فرستنده را به این صورت بسازید:
var address = new java.net.Proxy(
java.net.Proxy.Type.HTTP,
new java.net.InetSocketAddress("proxy.example", 8080));
var proxy = new com.azure.core.amqp.ProxyOptions(
com.azure.core.amqp.ProxyAuthenticationType.BASIC,
address, proxyUser, proxyPassword);
var sender = new com.azure.messaging.servicebus.ServiceBusClientBuilder()
.connectionString(serviceBusConnectionString)
.transportType(com.azure.core.amqp.AmqpTransportType.AMQP_WEB_SOCKETS)
.proxyOptions(proxy)
.sender()
.queueName(queueName)
.buildClient();
متغیرهای حساب از طریق پروکسیای که Basic را میپذیرد احراز هویت میشوند. رشتهٔ اتصال و نام صف همچنان منبع Service Bus را مشخص میکنند. فرستنده را در طول عمر موردنظر آن نگه دارید و وقتی برنامه کارش تمام شد آن را ببندید.
اینجا از com.azure.core.amqp.ProxyOptions استفاده کنید. پشتهٔ HTTP آژور کلاس دیگری با نامی مشابه برای گزینههای پروکسی دارد؛ اما آن نوعی نیست که این سازنده میپذیرد.
این اتصال پیامرسانی را پیکربندی میکند. برنامهای که از اعتبارنامهٔ هویتی مستقل ساختهشده استفاده میکند ممکن است لازم باشد انتقال HTTP توکن آن اعتبارنامه را هم پیکربندی کند.
نمونههای قدیمی Azure SDK 0.9 به نسل دیگری از کلاینت اشاره دارند. نتیجه نگیرید که ثابتهای پیکربندی یا ویژگیهای عمومی HTTP آن سازندهٔ مدرن AMQP را توصیف میکنند.