WsHttpBinding的通过HTTPS导致错误400“错误的请求”(wsHTTPBinding

2019-09-16 12:26发布

我一直在试图创建一个简单的服务,以允许登录到通过WCF,直到我发布的服务,现场环境,它使用HTTPS,所有工作得很好远程服务器的消息。

经过一番搜索,我发现我需要我的ServiceConfig改变;对于不同的协议。 我用这两篇文章的组合:

  1. 如何配置WCF服务,通过HTTPS,而不HTTP绑定工作?
  2. WCF绑定HTTPS所需

在作出对我的配置推荐的变化,我似乎是在一个状态,我可以在VS2010一个WCF引用新增了Live服务,但是当我用IE浏览的服务或MEX地址,我一直接受一个“HTTP 400错误的请求”的错误。

在使用本服务的方面,我似乎可以成功运行它,但MEX只是不希望通过IE浏览器的工作。

服务本身被在Windows Server上承载2003 R2标准版SP2运行IIS 6.0不带负载平衡。

我在在这一点上的损失真的,我已经花了3-4天这个乱搞,但我似乎无法取得任何进展。 因此,任何帮助将不胜感激。

见有问题的服务器服务的配置如下:

  <system.serviceModel> 
    <services>
      <service name="mycorp.Callback.SecPayService" behaviorConfiguration="mycorp.Callback.SecPayServiceBehavior">
         <endpoint address="https://myserver.co.uk/SecPay/SecPayService.svc"
                   binding="wsHttpBinding" bindingConfiguration="TransportBinding" 
                   contract="mycorp.Callback.ISecPayService"/>      
        <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" />        
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="mycorp.Callback.SecPayServiceBehavior">
          <serviceMetadata httpsGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="true" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <bindings>
      <wsHttpBinding>
        <binding name="TransportBinding">
          <security mode="Transport">
            <transport clientCredentialType="None" />
          </security>
        </binding>
      </wsHttpBinding>
    </bindings>
  </system.serviceModel>

Answer 1:

如果你正在主持在IIS服务则只是作为端点地址由IIS指定的端点元素地址值空字符串



文章来源: wsHTTPBinding over HTTPS causes Error 400 'Bad Request'