2012-08-03 21 views
2

我想從Android應用程序連接託管在本地IIS Express上的WCF服務。目前,我正在模擬器上測試它。無效的主機名 - 無法從Android模擬器連接IIS Express

爲服務本地URL是http://locahost:40000/api/Authenticate

我知道本地主機是不會工作,我在代碼

post = new HttpPost("http://10.0.2.2:40000/api/authenticate"); 

使用10.0.2.2,但對客戶端的響應執行是「無效主機名」

我嘗試編輯IIS的對ApplicationHost.config表達,並增加了綁定條目10.0.2.2,但沒有奏效過

還有什麼我缺少的?

+1

[Android模擬器環回到IIS Express的可能的重複不起作用,但與卡西尼一起工作](http://stackoverflow.com/questions/6192726/android-emulator-loopback-to-iis-express-does-不工作,但工作與cassi) – 2013-09-23 11:15:26

回答

8

我想它的工作別的東西,我添加了IIS快遞ApplicationHost.config文件中的我的系統的IP地址綁定部分。

<bindings> 
<binding protocol="http" bindingInformation="*:40000:localhost" /> 
<binding protocol="http" bindingInformation="*:40000:192.168.5.118" /> 
</bindings> 

我能夠調用該服務現在

+1

對我來說,它與'*:PORT_NUM:*''感謝分享文章! – ygaradon 2014-04-30 18:44:08

+0

文章**取代** bindingInformation,不要這樣做,像@Kunal那樣做並做一個副本。 – CularBytes 2015-05-18 12:06:44

-1

添加Internet PermissionNetwork State,並Wifi權限在AndroidManifest.xml

+0

它已經完成 – 2012-08-03 16:47:34

-1
  1. 「端口40000」 什麼是???????
    我倒是絕對嘗試使用較小的端口號(如低於32768東西;))
  2. 確保您的AndroidManifest.xml有互聯網的權限
  3. 確保「API /認證」,在IIS
  4. 定義和可用
  5. 確保將Windows防火牆沒有阻止40000點端口
  6. 有用的工具包括:
    • 平(這樣你就可以 「平10.0.0.2」;在開箱即用的Windows中可用)
    • 的telnet(S你可以「telnet localhost NNN」;您必須在Windows功能)
    • Firefox和Firebug插件這個
    • Wireshark的
+1

我不認爲有任何問題,端口的數量。當我從小提琴手調用API時,40000可以工作。所有這些都是在小提琴手上,但不是在Android上。 – 2012-08-03 16:43:36

+0

此外,我有清單文件中列出的這些權限: <使用權限的android:name =「android.permission.ACCESS_NETWORK_STATE」/> – 2012-08-03 16:44:45

+8

@ Paulsm4,以及沒有這個需要..但我仍然要提到,每個TCP/IP連接有65536個端口從0開始計數,否則它的65535 ..所以40000是一個相當有效的一個....感謝... – 2012-08-03 17:20:52

5

據我瞭解,10.0.2.2是127.0.0.1的別名,所以添加到您的applicationhost.config爲您的網站,例如結合

<site name="MySite" id="1"> 
    <application path="/" applicationPool="Clr4IntegratedAppPool"> 
     <virtualDirectory path="/" physicalPath="{yourpath}" /> 
    </application> 
    <bindings> 
     <binding protocol="http" bindingInformation="*:26013:localhost" /> 
     <binding protocol="http" bindingInformation="*:26013:127.0.0.1" /> 
    </bindings> 
    </site> 

請記住,這些天,如果你使用Visual Studio爲您的網站的相關applicationhost.config可能不c:\users\...而是在解決方案的根文件夾.vs\config

相關問題