WCF 服务 - 无法检索服务绑定



我们有一个简单的IIS服务,只是通过https托管一种方法。该服务可以在 SOAPUI 中使用和使用,并且可以连接并正常工作。但是,我们在另一个网络上有一个客户端正在使用我们的 IIS 服务终结点并尝试使用该服务,但客户端服务器报告错误:

无法检索服务绑定

我不知道这到底意味着什么,以及为什么它通过另一个网络工作正常,但在另一个网络上失败。有谁知道我可能会追逐什么来解决故障服务器上的此错误。也许我需要在服务中更改一些内容,但不确定。谢谢。

这是我web.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
    <appSettings>
    </appSettings>
    <system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="basicHttpBinding_eLink" maxReceivedMessageSize="20000000">
                    <security mode="Transport" >
                        <transport clientCredentialType= "None" />
                    </security>
                </binding>
            </basicHttpBinding>
            <mexHttpsBinding>
                <binding name="secureMexBinding" />
            </mexHttpsBinding>
        </bindings>
        <client>
        </client>
        <behaviors>
            <serviceBehaviors>
                <behavior>
                    <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
                    <serviceDebug includeExceptionDetailInFaults="true" />
                </behavior>
            </serviceBehaviors>
        </behaviors>
        <services>
            <service name="eLink.PublishActionWebService">
                <endpoint 
                    address="" 
                    binding="basicHttpBinding" 
                    bindingConfiguration="basicHttpBinding_eLink" 
                    contract="eLink.IService"/>
                <endpoint 
                    address="mex" 
                    binding="mexHttpsBinding" 
                    bindingConfiguration="secureMexBinding" 
                    contract="IMetadataExchange"  />
            </service>
        </services>
        <protocolMapping>
            <add binding="basicHttpsBinding" scheme="https" />
        </protocolMapping>
        <serviceHostingEnvironment aspNetCompatibilityEnabled="false" multipleSiteBindingsEnabled="true" />
    </system.serviceModel>
</configuration>

我认为您需要在<protocolMapping>节点中指定绑定配置,因为您的端点中引用了一个命名绑定。

从:

<add binding="basicHttpsBinding" scheme="https" />

自:

<add binding="basicHttpsBinding" scheme="https" bindingConfiguration="basicHttpBinding_eLink" />