Para o cliente de mensaxería Service Bus v7 de Node detrás dun proxy HTTP, use a disposición AMQP sobre WebSockets do exemplo do 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 },
  },
});

Proporcione o URL do proxy e a cadea de conexión de Service Bus. Para unha proba permitida dun espazo de nomes público de Service Bus sen autenticación de proxy, unha entrada HTTP da lista de proxies HTTP pode proporcionar proxyUrl. Os paquetes ws e https-proxy-agent xa deben ser dependencias da aplicación. A interface subxacente de axente proxy de ws mantén separados o servizo WebSocket e os enderezos do proxy.

Isto constrúe o cliente; a conexión prodúcese cando un remitente ou destinatario realiza unha operación. Consérveo para esa carga de traballo e espere client.close() ao pechar.

Localice un fallo entre a configuración do túnel do proxy, a negociación de WebSocket e a operación de Service Bus. O proxy debe permitir ese destino e esa sesión. Un acceso HTTPS breve non demostra compatibilidade coa actualización nin un límite aceptable de conexións de longa duración.

Esta é a sobrecarga con cadea de conexión. Unha credencial de identidade pode engadir unha ruta de obtención de token configurada por separado. Os fragmentos REST antigos de azure-sb usan outra xeración; identifique o paquete antes de escoller as súas opcións de transporte.

Artigos relacionados