Para o cliente de mensagens Service Bus v7 do Node atrás de um proxy HTTP, use a disposição 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 },
  },
});

Forneça a URL do proxy e a cadeia de conexão do Service Bus. Para um teste permitido de um namespace público do Service Bus sem autenticação de proxy, uma entrada HTTP da lista de proxies HTTP pode fornecer proxyUrl. Os pacotes ws e https-proxy-agent já devem ser dependências da aplicação. A interface subjacente de agente proxy do ws mantém o serviço WebSocket e os endereços do proxy separados.

Isso constrói o cliente; a conexão ocorre quando um remetente ou destinatário executa uma operação. Mantenha-o para essa carga de trabalho e aguarde client.close() ao encerrar.

Localize uma falha entre a configuração do túnel do proxy, a negociação WebSocket e a operação do Service Bus. O proxy deve permitir esse destino e essa sessão. O acesso HTTPS curto não prova suporte à atualização nem um limite aceitável de conexões de longa duração.

Esta é a sobrecarga com cadeia de conexão. Uma credencial de identidade pode adicionar um caminho de obtenção de token configurado separadamente. Trechos REST antigos do azure-sb usam outra geração; identifique o pacote antes de escolher suas opções de transporte.

Artigos relacionados