Azure Service Bus за Node.js: HTTP прокси преко AMQP-а на WebSockets-у
Конфигуришите @azure/service-bus са ws и HttpsProxyAgent када AMQP веза мора да прође кроз HTTP прокси.
За Node-ов клијент за размену порука Service Bus v7 иза HTTP проксија користите SDK пример AMQP-преко-WebSockets:
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 },
},
});
Наведите URL проксија и connection string за Service Bus. За дозвољени тест јавног Service Bus простора имена без proxy аутентификације, HTTP унос са листе HTTP проксија може дати proxyUrl. Пакети ws и https-proxy-agent већ морају бити зависности апликације. Основно ws сучеље proxy агента држи WebSocket услугу и адресе проксија одвојеним.
Ово гради клијента; повезивање се дешава када пошиљалац или прималац изврши операцију. Задржите га за тај посао и сачекајте client.close() при гашењу.
Пронађите квар између постављања proxy тунела, преговарања WebSocket-а и операције Service Bus-а. Proxy мора дозволити ту дестинацију и сесију. Кратак HTTPS приступ не доказује подршку за надоградњу ни прихватљив дугорочни лимит веза.
Ово је преоптерећење са connection string-ом. Идентитетска акредитација може додати засебно конфигурисан пут за добијање токена. Стари azure-sb REST исечци користе другу генерацију; идентификујте пакет пре него што изаберете његове транспортне опције.