似乎我的问题的解决方案应该比现在更容易,这让我觉得我错过了显而易见的事情。我正在尝试测试并确保远程客户端计算机可以发送/接收来自 Azure 服务总线队列的消息。
我正在使用 Microsoft 在https://www.windowsazure.com/en-us/develop/net/how-to-guides/service-bus-amqp/提供的示例应用程序
只要所有端口都打开,示例应用程序就可以正常工作。但是,当只有端口 80/443 可用时,我需要该解决方案才能工作。如果我将 Windows 防火墙配置为仅允许 80/443 上的入站/出站流量,则它不起作用。我收到错误“试图以访问权限禁止的方式访问套接字”。
示例应用程序中的违规行是:
sender = factory.CreateMessageSender(entityName);
我查看了非常多的网站,我发现的一个建议是将连接模式设置为 Http,如下所示:
ServiceBusEnvironment.SystemConnectivity.Mode = ConnectivityMode.Http;
那也行不通。
我没有尝试在远程客户端或 Azure 托管角色上设置自定义服务。我只需要它们都能够通过 Azure 的服务总线队列和主题发送/接收消息。
谁能指出我的缺点?