Azure Service Bus Node.js-rako: HTTP proxy AMQP bidez WebSockets gainean
Konfiguratu @azure/service-bus ws eta HttpsProxyAgent-ekin AMQP konexioak HTTP proxy bat zeharkatu behar duenean.
HTTP proxy baten atzean dagoen Node-ren Service Bus v7 mezularitza bezeroarentzat, erabili SDK adibidearen AMQP-over-WebSockets antolamendua:
const { ServiceBusClient } = require("@azure/service-bus");
const WebSocket = require("ws");
const { HttpsProxyAgent } = require("https-proxy-agent");
const proxyAgent = new HttpsProxyAgent(proxyUrl);
const client = new ServiceBusClient(connectionString, {
webSocketOptions: {
webSocket: WebSocket,
webSocketConstructorOptions: { agent: proxyAgent },
},
});
Eman proxyaren URLa eta Service Bus-en konexio-katea. Proxyaren autentifikaziorik gabeko Service Bus namespace publikoaren proba baimendu baterako, HTTP proxy zerrendako HTTP sarrera batek proxyUrl eman dezake. ws eta https-proxy-agent paketeak aplikazioaren mendekotasun izan behar dira jada. Azpiko ws proxy-agentearen interfazeak WebSocket zerbitzua eta proxy helbideak bereizita mantentzen ditu.
Honek bezeroa eraikitzen du; konexioa igorle edo hartzaile batek eragiketa bat egiten duenean gertatzen da. Mantendu karga-lan horretarako eta itzaltzean itxaron client.close().
Kokatu hutsegitea proxy tunela ezartzean, WebSocket negoziazioan eta Service Bus eragiketan. Proxyak helmuga eta saio hori baimendu behar ditu. HTTPS sarbide laburrak ez du frogatzen bertsio-berritzearen euskarria ezta onargarria den epe luzeko konexio-muga.
Hau konexio-katearen gainkarga da. Identitate-kredentzial batek tokenak lortzeko bide bereizi bat gehi dezake. azure-sb REST zati zaharrek beste belaunaldi bat erabiltzen dute; identifikatu paketea haren garraio-aukerak aukeratu aurretik.