Azure Service Bus Node.js-hez: HTTP-proxy AMQP-n keresztül WebSockets felett
Konfigurálja az @azure/service-bus csomagot ws és HttpsProxyAgent használatával, amikor az AMQP-kapcsolatnak HTTP-proxyn kell átmennie.
A Node HTTP-proxy mögötti Service Bus v7 üzenetküldő klienséhez használja az SDK-minta AMQP-over-WebSockets elrendezését:
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 },
},
});
Adja meg a proxy URL-jét és a Service Bus kapcsolati karakterláncát. Egy engedélyezett, proxyhitelesítés nélküli nyilvános Service Bus-névtér tesztjéhez a HTTP-proxyk listájából származó HTTP-bejegyzés adhat proxyUrl-t. A ws és https-proxy-agent csomagoknak már alkalmazásfüggőségeknek kell lenniük. Az alapul szolgáló ws proxyagent felület külön tartja a WebSocket-szolgáltatást és a proxy címét.
Ez felépíti a klienst; a kapcsolódás akkor történik, amikor a feladó vagy a fogadó műveletet hajt végre. Tartsa meg ehhez a terheléshez, és leállításkor várja meg a client.close() hívást.
Keresse a hibát a proxytunnel beállítása, a WebSocket-egyeztetés és a Service Bus-művelet között. A proxynak engedélyeznie kell ezt a célt és munkamenetet. A rövid HTTPS-hozzáférés nem bizonyítja a frissítés támogatását vagy az elfogadható hosszú távú kapcsolati korlátot.
Ez a kapcsolati karakterláncot használó túlterhelés. Egy identitás-hitelesítő adat külön beállított tokenbeszerzési útvonalat adhat hozzá. A régi azure-sb REST-részletek más generációt használnak; a szállítási beállítások kiválasztása előtt azonosítsa a csomagot.