[英]How to forward request to WCF-service?
我有wcf-service,可在http://195.50.152.240:23/monitoring.svc/地址上获得。 我也有必须使用wcf-service的特殊服务器,但是当我将上面的url设置为wcf-service源时,特殊服务器正在通过另一个URL进行寻址,例如http://195.50.152.240:23/monitoring.svc/AnalyticalServer/ ws 。 问题是如何将请求从特殊服务器转发到我的WCF服务?
我对特殊服务器一无所知,只知道它会转换请求(Wireshark规则),WCF服务由IIS 8.5托管。在WCF的web.config中指定终结点没有帮助。 我收到类似“无法从http://195.50.152.240:23/monitoring.svc/AnalyticalServer/ws获取元数据的错误”信息,如果这是您有权访问的Windows(R)Communication Foundation服务,请检查您是否拥有已启用在指定地址发布元数据。”
更新:
Web.config代码段:
<system.serviceModel>
<services>
<service name="AnalyticalServer.WebService">
<endpoint address="/AnalyticalServer/ws"
binding="basicHttpBinding"
contract="AnalyticalServer.AnalyticalServerWS" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:23/AnalyticalServer.WebService"/>
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<protocolMapping>
<add binding="basicHttpBinding" scheme="http"/>
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true"/>
</system.serviceModel>
尝试将您的web.config更改为
<service name="AnalyticalServer.WebService">
<endpoint address="/AnalyticalServer/ws"
binding="basicHttpBinding"
contract="AnalyticalServer.AnalyticalServerWS" />
<host>
<baseAddresses>
<add baseAddress="http://195.50.152.240:23/monitoring.svc/" />
</baseAddresses>
</host>
</service>
在此之后你WCF服务将可在http://195.50.152.240:23/monitoring.svc/ ,你可以访问合同=“AnalyticalServer.AnalyticalServerWS” http://195.50.152.240:23/monitoring.svc/ AnalyticalServer / ws 。
如果您的特殊服务器在此之后看不到WCF服务,请尝试更改端点的绑定(我认为端点地址中的/ ws可能表示wsHttpBinding )
另请阅读此了解什么是服务端点和主机基址。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.