Для клиента обмена сообщениями Service Bus v7 в Node за HTTP-прокси используйте схему AMQP поверх WebSockets из примера 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 },
  },
});

Укажите URL прокси и строку подключения Service Bus. Для разрешённого теста публичного пространства имён Service Bus без аутентификации прокси HTTP-запись из списка HTTP-прокси может дать proxyUrl. Пакеты ws и https-proxy-agent уже должны быть зависимостями приложения. Базовый интерфейс прокси-агента ws держит службу WebSocket и адреса прокси отдельно.

Это создаёт клиента; соединение возникает, когда отправитель или получатель выполняет операцию. Сохраняйте его для этой нагрузки и при завершении дождитесь client.close().

Ищите сбой при настройке туннеля прокси, согласовании WebSocket и операции Service Bus. Прокси должен разрешать это назначение и сеанс. Кратковременный доступ по HTTPS не доказывает поддержку обновления или приемлемый лимит долговременных соединений.

Это перегрузка со строкой подключения. Учётные данные удостоверения могут добавить отдельно настроенный путь получения токена. Старые фрагменты REST для azure-sb используют другое поколение; определите пакет, прежде чем выбирать его транспортные параметры.

Похожие статьи