我正在现有应用程序中进行一些代码重构。
该应用程序已托管,并且工作正常。
我有外部Windows服务托管的WCF服务。
确实,我在本地工作,我正在尝试在Pre prod环境中测试一些代码实现。
因此,这是basicHttpBinding代码中的代理配置:
<bindings>
<basicHttpBinding>
<!--proxy configuration must be provided-->
<binding name="BindingTimeSheet" maxReceivedMessageSize="6000000" useDefaultWebProxy="false" proxyAddress="http://xxx.xxx.x.x:xxxx" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:01:00" sendTimeout="00:01:00">
<readerQuotas />
<security mode="Transport">
<transport clientCredentialType="Ntlm" />
</security>
</binding>
</basicHttpBinding>
</bindings>
这是项目服务器端点配置:
<client>
<endpoint address="https://xxxxxxxxxx.asmx" binding="basicHttpBinding" bindingConfiguration="BindingTimeSheet" contract="ProxyClientJeanDoe.JeanDoeSoap" name="JeanDoeSoap" />
</client>
我收到了这个例外:
内部异常1:EndpointNotFoundException:没有收听 https://xxxxxxx.asmx上可以接受该消息的端点。这个 通常是由于地址或SOAP操作不正确。如果有,请参阅 InnerException元素以获取更多信息。
内部异常2:WebException:无法连接到远程服务器
内部异常3:SocketException:连接尝试失败 因为关联方在一定程度后没有正确回应 由于登录,时间或已建立的连接失败 主机没有回复xxx.xxx.xx.x:xxxx
我已经测试了WSDL服务并且它们工作正常但代理地址没有响应
我已经尝试设置启用匿名身份验证,并且我在使用代理服务器的本地计算机上工作,出于安全原因,无法配置防火墙。
感谢您的理解
答案 0 :(得分:0)
最后,问题与BypassProxyOnLocal标志有关。 它已启用,因此对本地Internet资源的请求未使用代理服务器。
放入Web.config的这个配置工作正常。
<system.net>
<defaultProxy useDefaultCredentials="true">
<proxy usesystemdefault="True" proxyaddress="http://xxxxxxxxxxx:8080"
bypassonlocal="False"/>
</defaultProxy>
</system.net>
谢谢。