如果我在IIS中托管公开的WCF Web服务,我应该如何配置端点地址?我想我可以使用:
<endpoint address="http://localhost/MyService" ... />
或
<endpoint address="http://example.com/MyService" ... />
在这两种情况下,另一台计算机上的客户端必须使用第二个选项进行客户端绑定。
如果我使用Visual Studio创建客户端,则两个服务器绑定似乎都可以正常工作。但是,我认为我在Powershell中使用new-webserviceproxy时遇到了第一个选项。
我在服务器上使用哪一个是否重要?
答案 0 :(得分:1)
MSDN: Specifying an Endpoint Address:
您必须为IIS托管的服务端点使用相对端点地址。提供完全限定的端点地址可能会导致服务部署出错。有关详细信息,请参阅Deploying an Internet Information Services-Hosted WCF Service。
从该链接:
在IIS中托管时,端点地址始终被视为相对于代表服务的.svc文件的地址。例如,如果WCF服务的基地址为
http://localhost/Application1/MyService.svc
,则具有以下端点配置。<endpoint address="anotherEndpoint" .../>
这提供了一个可以在
到达的端点http://localhost/Application1/MyService.svc/anotherEndpoint