我正在为我提供以下信息的经纪人编写amqp 1.0客户端(在.NET中使用rabbitMQ.Client):
我在Visual Studio中开发了以下代码,该代码可以工作(基于Web上的长搜索):
var cf = new ConnectionFactory();
cf.Uri = new Uri("amqps://brokerRemoteHostName:5671");
cf.Ssl.Enabled = true;
cf.Ssl.ServerName = "brokerRemoteHostName";
cf.Ssl.CertPath = @"C:\Users\mahmoud\Documents\certificate_openssl.p12";
cf.Ssl.CertPassphrase = "myPassword";
var connection = cf.CreateConnection();
Run Code Online (Sandbox Code Playgroud)
但是,输出显示异常:
RabbitMQ.Client.Exceptions.BrokerUnreachableException:
None of the specified endpoints were reachable ---> System.IO.IOException:
connection.start was never received
Run Code Online (Sandbox Code Playgroud)
可能是由于网络超时),如图所示.
其中第50行对应于我们创建连接的行.
感谢您对上述错误的帮助.
如果您要连接到 docker 容器,则在创建容器时除了 15672 端口之外还需要添加 5672 端口。对于使用 ssl 的用户,端口将为 5671 而不是 5672。
例子:docker run -d --hostname my-rabbit --name rabbitmq --net customnet -p customport:15672 -p 5672:5672 rabbitmq:3-management。
您可以通过调用以下命令从客户端进行连接:ConnectionFactory factory = new ConnectionFactory() { HostName = "localhost" };。
如果用户名和密码已更改,请随意传递。
| 归档时间: |
|
| 查看次数: |
2185 次 |
| 最近记录: |