2014-01-25 4 views
0

Я пытаюсь создать приложение для Android, которое получает данные из службы REST как JSON.HttpGet на localhost connect failed

Я использую компьютер, окна, затмение и эмулятор Android.

В этой функции ниже. Если я использую URL-адрес, который живет в Интернете, он работает отлично.

HttpGet httpGet = new HttpGet("http://www.cheesejedi.com/rest_services/get_big_cheese.php?puzzle=1"); 

, но если я использую URL, который размещается локально (с помощью Visual Studio) на моем компьютере я получаю ошибку говоря «Conection отказался.»

HttpGet httpGet = new HttpGet ("http: //" + "localhost: 50851/Default.aspx");

Как подключиться к локальному хосту? Thnaks


protected String doInBackground(Void... params) { 
      HttpClient httpClient = new DefaultHttpClient(); 
      HttpContext localContext = new BasicHttpContext(); 
      //HttpGet httpGet = new HttpGet("http://www.cheesejedi.com/rest_services/get_big_cheese.php?puzzle=1"); 
      HttpGet httpGet = new HttpGet("http://" + "localhost:50851/Default.aspx"); 
      // 
      String text = null; 
      try { 
        HttpResponse response = httpClient.execute(httpGet, localContext); 
        HttpEntity entity = response.getEntity(); 
        text = getASCIIContentFromEntity(entity); 
      } catch (Exception e) { 
       return e.getLocalizedMessage(); 
      } 
      return text; 
     } 
+0

см это 'HTTP: ///stackoverflow.com вопросы/21234768/Android-приложений сети без ошибок не удалось к подключению/21234855 # 21234855' –

+0

использования 10.0.0.2 вместо localhost. – Aravin

+0

Поскольку ваш эмулятор Android работает на виртуальной машине (QEMU), и вы не можете подключиться к серверу, прямо работающему на вашем ПК. – Aravin

ответ

0

использование 10.0.0.2 в качестве локального хоста,

см здесь: Refer this one

0

В компьютере откройте командную строку, введите IPCONFIG в окнах (Linux IFCONFIG) вы может видеть ваш IP-адрес.

Example: 192.168.0.111 

Change **localhost** by **192.168.0.111** 

Localhost только в компьютере, это не в вашем мобильном

0

Вы не можете использовать локальный хост при запуске на устройстве/эмуляторе. В этом случае запрос будет перенаправлен на интерфейс loopback устройства. Просто измените Localhost с IP вами ПК

HttpGet httpGet = new HttpGet("http://" + "your.computer.ip:50851/Default.aspx"); 
Смежные вопросы