2013-10-01 181 views
0

我開發在2010年VS WCF服務(3.5),一般我能夠通過WCF測試客戶端進行測試,並從任何瀏覽器調用該服務。我在我的Windows 7開發機器上,所以一切都是默認的。地址就像http://localhost:54538/MyService.svc如何配置WCF服務端點爲第三方客戶端

但是,當我嘗試從第三方客戶端(最終是我的目標)調用服務時,客戶端根本沒有得到任何響應。迴應只是。我也嘗試通過本地Apache webserver的PHP curl來調用服務 - 也是一個空的響應。

所以我認爲可能是配置有問題。該服務部分是:

<services> 
    <service behaviorConfiguration="MyNamespace.Service1Behavior" name="MyNamespace.MyService"> 
     <endpoint address="" binding="wsHttpBinding" contract="MyNamespace.IMyService"> 
      <identity> 
       <dns value="localhost" /> 
      </identity> 
     </endpoint> 
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
    </service> 
</services> 

我一定要添加一個端點或改變什麼嗎?

+1

使用WCF測試客戶端服務表示一個** SOAP **服務,而從任何瀏覽器調用該服務將指示一個** REST **服務('webHttpBinding')..... –

回答

0

所以我找到了解決方案(基於@marc_s'評論)是加入另一個端點的WebHttpBinding:

<endpoint address="rest" binding="webHttpBinding" contract="MyNamespace.IMyCometService" bindingConfiguration="UnsecuredWeb"> 
    <identity> 
     <dns value="localhost"/> 
    </identity> 
</endpoint> 

然後調用從第三方軟件通過http://localhost:54538/MyService.svc/rest