Web服务错误“没有端点正在监听...”防火墙关注

时间:2013-05-20 00:48:24

标签: asp.net web-services firewall

所以我有一个可以使用localhost运行的Web服务服务引用,可以从其生产URL中进行ping操作,但我无法通过生产中的Service Reference调用访问它。我相信问题是我的防火墙。我在同一台服务器上有两个网站,每个网站都有自己的专用IP地址。我试图从第一个网站调用第二个网站上的Web服务。如果我在生产服务器上打开浏览器,则无法导航到任一网站。

错误说明:http:// [209.112.245.103] /Services/OfferService.asmx上没有可以接受该消息的端点。这通常是由错误的地址或SOAP操作引起的。有关更多详细信息,请参阅InnerException(如果存在)。

内部异常:无法连接到远程服务器

主叫网站位于同一台服务器上(当然是不同的IP),并通过服务参考呼叫网络服务:

 Dim offerService As New ServiceReferenceOffer.OfferServiceSoapClient("OfferServiceSoap")

offerService.BroadcastOfferChange(offer.PropertyID, offer.OfferID, offer.ResultResponse)

我的web.config包含以下服务端点信息:

<system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="OfferServiceSoap" />
                <binding name="ConversationServiceSoap" />
            </basicHttpBinding>
            <customBinding>
                <binding name="OfferServiceSoap12">
                    <textMessageEncoding messageVersion="Soap12" />
                    <httpTransport />
                </binding>
                <binding name="ConversationServiceSoap12">
                    <textMessageEncoding messageVersion="Soap12" />
                    <httpTransport />
                </binding>
            </customBinding>
        </bindings>
        <client>
            <endpoint address="http://209.112.245.103/Services/ConversationService.asmx"
                binding="basicHttpBinding" bindingConfiguration="ConversationServiceSoap"
                contract="ServiceReferenceConversation.ConversationServiceSoap"
                name="ConversationServiceSoap" />
            <endpoint address="http://209.112.245.103/Services/ConversationService.asmx"
                binding="customBinding" bindingConfiguration="ConversationServiceSoap12"
                contract="ServiceReferenceConversation.ConversationServiceSoap"
                name="ConversationServiceSoap12" />
            <endpoint address="http://209.112.245.103/Services/OfferService.asmx"
                binding="basicHttpBinding" bindingConfiguration="OfferServiceSoap"
                contract="ServiceReferenceOffer.OfferServiceSoap" name="OfferServiceSoap" />
            <endpoint address="http://209.112.245.103/Services/OfferService.asmx"
                binding="customBinding" bindingConfiguration="OfferServiceSoap12"
                contract="ServiceReferenceOffer.OfferServiceSoap" name="OfferServiceSoap12" />
        </client>
    </system.serviceModel>

1 个答案:

答案 0 :(得分:0)

您的配置正确无误。我刚刚访问了你的服务器,一切都很顺利(所以它与代码无关)。

由于站点和网站位于同一服务器中,您可能需要使用不同的IP或地址来访问wcf(尝试127.0.0.1,localhost或内部服务器ip)。