我应该在WCF服务的端点地址中使用localhost吗?

时间:2014-10-16 15:50:54

标签: web-services wcf iis

如果我在IIS中托管公开的WCF Web服务,我应该如何配置端点地址?我想我可以使用:

<endpoint address="http://localhost/MyService" ... />

<endpoint address="http://example.com/MyService" ... />

在这两种情况下,另一台计算机上的客户端必须使用第二个选项进行客户端绑定。

如果我使用Visual Studio创建客户端,则两个服务器绑定似乎都可以正常工作。但是,我认为我在Powershell中使用new-webserviceproxy时遇到了第一个选项。

我在服务器上使用哪一个是否重要?

1 个答案:

答案 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

到达的端点