You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Azure Service Bus Node.js客户端通过HTTPS 443端口而非5671端口连接

Node.js 环境 @azure/service-bus 切换HTTPS 443端口连接方案

Node.js版Azure Service Bus SDK没有和.NET完全一致的全局连接模式开关,直接通过客户端配置强制使用AMQP over WebSocket走443 HTTPS端口,就能实现和.NET设置ConnectivityMode.Https完全相同的效果,绕开5671端口封禁限制。

v7及以上版本@azure/service-bus配置方法

这是目前官方维护的主流版本,配置方式如下:

  1. 导入依赖
const { ServiceBusClient } = require("@azure/service-bus");
const { AmqpTransportType } = require("@azure/core-amqp");
  1. 初始化Service Bus客户端时传入传输类型配置
const connectionString = "替换为你的Azure Service Bus连接字符串";

const serviceBusClient = new ServiceBusClient(connectionString, {
  // 强制使用AMQP over WebSocket,走443 HTTPS端口
  transportType: AmqpTransportType.AmqpOverWebsocket,
  // 若环境需要走代理,可新增webSocketOptions配置,不需要可删除整个字段
  webSocketOptions: {
    proxy: {
      host: "代理地址",
      port: 代理端口号,
      username: "代理用户名(可选)",
      password: "代理密码(可选)"
    }
  }
});

配置完成后后续的收发消息、订阅监听逻辑无需修改,直接使用该客户端实例即可。

v2及以下旧版azure-sb包配置方法

如果使用的是早已停止维护的旧版azure-sb包,可使用以下配置:

const azure = require("azure");
const connectionString = "替换为你的Azure Service Bus连接字符串";

const serviceBusService = azure.createServiceBusService(connectionString, {
  enableAmqpWebSockets: true
});

内容的提问来源于stack exchange,提问作者Heinrich Ulbricht

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 06:24:00