Azure Service Bus don Node.js: wakili na HTTP ta hanyar AMQP a kan WebSockets
Daidaita @azure/service-bus tare da ws da HttpsProxyAgent lokacin da haɗin AMQP dole ya ratsa wakilin HTTP.
Don abokin ciniki na saƙon Service Bus v7 na Node bayan wakilin HTTP, yi amfani da tsarin AMQP-over-WebSockets na misalin 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 },
},
});
Bayar da URL ɗin wakili da igiyar haɗin Service Bus. Don gwajin da aka yarda na sararin suna na Service Bus na jama'a ba tare da tabbatar da wakili ba, shigarwar HTTP daga jerin wakilan HTTP na iya bayar da proxyUrl. Dole ne fakitin ws da https-proxy-agent sun kasance masu dogaro da aikace-aikacen tuni. Tushen mu'amalar wakilin ws yana riƙe sabis ɗin WebSocket da adiresoshin wakili daban.
Wannan yana gina abokin ciniki; haɗi yana faruwa lokacin da mai aikawa ko mai karɓa ya yi aiki. Riƙe shi don wannan nauyin aiki kuma jira client.close() lokacin rufewa.
Nemo gazawa tsakanin saitin ramin wakili, tattaunawar WebSocket da aikin Service Bus. Dole ne wakilin ya ba da izinin wannan manufa da zaman. Ɗan gajeren shiga HTTPS baya tabbatar da goyon bayan haɓakawa ko iyakar haɗin dogon lokaci da aka yarda.
Wannan shine nauyin igiyar haɗi. Takardar shaidar ainihi na iya ƙara hanyar samun token da aka daidaita daban. Tsofaffin guntun azure-sb REST suna amfani da wata tsara; gano fakitin kafin zaɓar zaɓuɓɓukan jigilar sa.