gpt4 book ai didi

c# - 无法使用 Microsoft.Azure.ServiceBus 连接到 Azure ServiceBus

转载 作者:行者123 更新时间:2023-12-02 04:50:48 27 4
gpt4 key购买 nike

我创建了一个非常简单的控制台应用程序,它连接到 Azure ServiceBus 并发送一条消息。我尝试了 Microsoft 的最新库 (Microsoft.Azure.ServiceBus),但无论我做什么,我都会收到此错误:

No connection could be made because the target machine actively refused it ErrorCode: ConnectionRefused

我在 Service Bus Explorer 中尝试了完全相同的连接字符串,它工作得很好。此外,我使用 Microsoft 的旧库 (WindowsAzure.ServiceBus) 进行连接,没有出现任何问题。

var sender = new MessageSender("endpoint", "topicName");
sender.SendAsync(new Message(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject("test"))));

我尝试使用 .NET Framework 4.6.2 和 Core,出现同样的异常。我怀疑这些库使用的默认协议(protocol)可能存在一些差异,但我无法确定这一点。

附注已尝试过 Microsoft docs 中的示例但结果仍然是相同的异常

最佳答案

老客户端支持ConnectivityMode使用 TCP、HTTP、HTTPS 和 AutoDetect。 ServiceBus Explorer 使用 AutoDetect,首先尝试 TCP,然后故障转移到 HTTPS,无论您使用的 TransportMode(SBMP 或 AMQP)如何。

随着新客户端的出现,情况发生了变化。 TransportMode 现在结合了这两个选项,并提供 Amqp(基于 TCP 的 AMQP)或 AmqpWebSockets(基于 WebSockets 的 AMQP)。没有AutoDetect模式。您必须创建客户端并将 TransportType 指定为 AmqpWebSockets绕过被阻止的 TCP 端口 5671,转而使用端口 443。

关于c# - 无法使用 Microsoft.Azure.ServiceBus 连接到 Azure ServiceBus,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50764285/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com