Node.js үшін Azure Service Bus: WebSockets үстінде AMQP арқылы HTTP проксиі
AMQP қосылымы HTTP проксиден өтуі керек болса, @azure/service-bus-ты ws және HttpsProxyAgent-пен конфигурациялаңыз.
HTTP проксиінің артындағы Node Service Bus v7 хабар алмасу клиенті үшін SDK үлгісінің AMQP-over-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-ін және Service Bus қосылым жолын беріңіз. Прокси аутентификациясынсыз рұқсат етілген жалпыға ортақ Service Bus namespace сынағы үшін HTTP проксилер тізімінен HTTP жазбасы proxyUrl бере алады. ws және https-proxy-agent пакеттері әлдеқашан қолданба тәуелділіктері болуы керек. Негізгі ws прокси-агент интерфейсі WebSocket қызметі мен прокси мекенжайларын бөлек ұстайды.
Бұл клиентті құрады; қосылу жіберуші немесе қабылдаушы операция орындағанда пайда болады. Оны сол жұмыс жүктемесі үшін сақтаңыз және өшіру кезінде client.close() күтіңіз.
Ақауды прокси туннелін орнату, WebSocket келіссөзі және Service Bus операциясы арасынан табыңыз. Прокси сол мақсат пен сеансқа рұқсат беруі керек. Қысқа HTTPS қатынасы жаңарту қолдауын немесе ұзақ мерзімді қосылымдардың қолайлы шегін дәлелдемейді.
Бұл қосылым жолы бар жүктеме. Сәйкестендіру тіркелгісі бөлек конфигурацияланған токен алу жолын қосуы мүмкін. Ескі azure-sb REST үзінділері басқа буынды пайдаланады; тасымалдау параметрлерін таңдамас бұрын пакетті анықтаңыз.