Azure Service Bus Java: bruk AMQP over WebSockets med ein proxy
Set opp Java-meldingsklienten til Azure Service Bus med AMQP over WebSockets og proxyinnstillingane til AMQP-biblioteket.
Den moderne Java-meldingsklienten for Azure Service Bus brukar AMQP. Byggjaren krev AMQP_WEB_SOCKETS når ein proxy er sett opp.
Med azure-messaging-servicebus 7.18.0 blir sendaren bygd slik:
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();
Kontovariablane autentiserer seg mot ein proxy som godtek Basic. Tilkoplingsstrengen og kønamnet identifiserer framleis Service Bus-ressursen. Hald på sendaren gjennom den tiltenkte levetida og lukk han når programmet er ferdig med han.
Bruk com.azure.core.amqp.ProxyOptions her. HTTP-stakken til Azure har ein annan klasse med liknande namn for proxyval; det er ikkje typen denne byggjaren godtek.
Dette set opp meldingssambandet. Eit program som brukar sjølvstendig oppretta identitetsopplysningar, kan òg måtte setje opp HTTP-transporten for tokenet til desse opplysningane.
Gamle døme for Azure SDK 0.9 viser til ei anna klientgenerasjon. Ikkje legg til grunn at konfigurasjonskonstantane eller dei generelle HTTP-eigenskapane skildrar den moderne AMQP-byggjaren.