Azure Service Bus pro Node.js: HTTP proxy přes AMQP na WebSockets
Nakonfigurujte @azure/service-bus s ws a HttpsProxyAgent, když musí AMQP připojení projít přes HTTP proxy.
Pro klientskou knihovnu Service Bus v7 pro Node za HTTP proxy použijte uspořádání AMQP přes WebSockets z ukázky SDK:
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 },
},
});
Zadejte URL proxy a připojovací řetězec Service Bus. Pro povolený test veřejného oboru názvů Service Bus bez ověřování proxy může položka HTTP ze seznamu HTTP proxy poskytnout proxyUrl. Balíčky ws a https-proxy-agent už musí být závislostmi aplikace. Základní rozhraní proxy agenta pro ws udržuje službu WebSocket a adresy proxy oddělené.
Tímto se klient vytvoří; připojení vzniká, když odesílatel nebo příjemce provede operaci. Ponechte jej pro tuto zátěž a při ukončení počkejte na client.close().
Hledejte selhání při nastavení tunelu proxy, vyjednávání WebSocketu a operaci Service Bus. Proxy musí povolit tento cíl a relaci. Krátký přístup přes HTTPS neprokazuje podporu upgradu ani přijatelný limit dlouhodobých připojení.
Toto je přetížení s připojovacím řetězcem. Přihlašovací údaj identity může přidat samostatně nakonfigurovanou cestu k získání tokenu. Staré fragmenty REST pro azure-sb používají jinou generaci; před volbou transportních možností identifikujte balíček.