Azure Service Bus Java: AMQP oor WebSockets met 'n proxy gebruik
Stel Azure Service Bus se Java-boodskapkliënt op met AMQP oor WebSockets en die AMQP-biblioteek se proxy-instellings.
Die moderne Java-boodskapkliënt van Azure Service Bus gebruik AMQP. Sy bouer vereis AMQP_WEB_SOCKETS wanneer 'n proxy opgestel word.
Met azure-messaging-servicebus 7.18.0 bou jy die sender soos volg:
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();
Die rekeningveranderlikes verifieer by 'n proxy wat Basic aanvaar. Die verbindingstring en tou-naam identifiseer steeds die Service Bus-hulpbron. Hou die sender vir sy bedoelde lewensduur en sluit dit wanneer die toepassing daarmee klaar is.
Gebruik hier com.azure.core.amqp.ProxyOptions. Azure se HTTP-stapel het 'n ander klas met 'n soortgelyke naam vir proxy-opsies; dit is nie die tipe wat hierdie bouer aanvaar nie.
Dit stel die boodskapverbinding op. 'n Toepassing wat 'n onafhanklik geskepte identiteitsgeloofsbrief gebruik, moet dalk ook daardie geloofsbrief se HTTP-vervoer vir tokenboodskappe opstel.
Ou voorbeelde vir Azure SDK 0.9 verwys na 'n ander kliëntgenerasie. Moenie aflei dat die konstantes of algemene HTTP-eienskappe daarvan die moderne AMQP-bouer beskryf nie.