【问题标题】:Can't connect to Windows ServiceBus via HTTPS无法通过 HTTPS 连接到 Windows ServiceBus
【发布时间】:2013-04-26 17:08:52
【问题描述】:

我正在尝试使用 HTTPS 连接到 Windows 服务总线。这是我的应用配置设置:

  <appSettings>
  <add key="Microsoft.ServiceBus.ConnectionString" value="Endpoint=https://example-service.servicebus.windows.net/;SharedSecretIssuer=owner;SharedSecretValue=example-shared-secret-value"/>
  </appSettings>

这是尝试创建连接的代码:

return SubscriptionClient.CreateFromConnectionString(ConnectionString, RequestTopicName,
                                                                 SubscriptionName, ReceiveMode.ReceiveAndDelete);

但是,它不起作用,抛出这个错误:

无法使用连接字符串创建 MessagingFactory。提供的 URI 方案“https”无效;预期的“某人”。有关详细信息,请参阅内部异常。检查您的连接字符串,然后重试。更多信息请查看http://go.microsoft.com/fwlink/?LinkID=249089

还有内部异常:

提供的 URI 方案“https”无效;预期的“某人”。在 Microsoft.ServiceBus.Messaging.Sbmp.SbmpMessagingFactory..ctor(IEnumerable1 baseAddresses, NetMessagingTransportSettings settings) at Microsoft.ServiceBus.Messaging.NetMessagingTransportSettings.Microsoft.ServiceBus.Messaging.ITransportSettings.BeginCreateFactory(IEnumerable1 physicalUriAddresses,AsyncCallback 回调,对象状态) 在 Microsoft.ServiceBus.Messaging.MessagingFactorySettings.OnBeginCreateFactory(IEnumerable1 uriAddresses, AsyncCallback callback, Object state) at Microsoft.ServiceBus.Messaging.MessagingFactorySettings.BeginCreateFactory(IEnumerable1 uriAddresses,AsyncCallback 回调,对象状态) 在 Microsoft.ServiceBus.Messaging.MessagingFactory.CreateMessagingFactoryAsyncResult..ctor(MessagingFactorySettings 设置,IEnumerable1 addresses, TimeSpan timeout, AsyncCallback callback, Object state) at Microsoft.ServiceBus.Messaging.MessagingFactory.BeginCreate(IEnumerable1 地址,MessagingFactorySettings factorySettings,TimeSpan 超时,AsyncCallback 回调,对象状态) 在 Microsoft.ServiceBus.Messaging.MessagingFactory.BeginCreate(IEnumerable1 addresses, MessagingFactorySettings factorySettings, AsyncCallback callback, Object state) at Microsoft.ServiceBus.Messaging.MessagingFactory.BeginCreate(IEnumerable1 地址,TokenProvider tokenProvider,AsyncCallback 回调,对象状态) 在 Microsoft.ServiceBus.Messaging.MessagingFactory.Create(IEnumerable1 addresses, TokenProvider tokenProvider) at Microsoft.ServiceBus.Messaging.Configuration.KeyValueConfigurationManager.CreateFactory(IEnumerable1 端点,IEnumerable`1 stsEndpoints,字符串 operationTimeout,字符串 issuerName,字符串 issuerKey,字符串域,字符串用户,SecureString 密码)

如果我将连接字符串更改为使用 sb.example-service.servicebus.windows.net 而不是 https.example-service.servicebus.windows.net 它可以,但我真的需要使用 HTTPS 而不是 SB。

任何想法为什么客户期待'sb'?如何将客户端配置为使用“https”。

【问题讨论】:

    标签: c# .net windows azure servicebus


    【解决方案1】:

    解决方案如下:将连接字符串的“https”部分改回“sb”,必须是“sb”。现在添加这行代码:

    ServiceBusEnvironment.SystemConnectivity.Mode = ConnectivityMode.Http;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-05
      • 1970-01-01
      • 2019-11-25
      • 1970-01-01
      • 2016-11-19
      • 2021-11-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多