Android / Eclipse / Emulator / WAMP:错误503和超时

时间:2012-05-11 11:30:51

标签: eclipse json apache android-emulator wamp

我正在尝试从我的Android应用程序中的PHP脚本请求JSON数据。

当我直接连接手机并直接访问“真正的”互联网网络服务器时,整个过程非常有效。但是,它根本不能使用模拟器和localhost(WAMP安装)。再次直接在本地Web服务器上运行脚本会给我预期的结果 - 只有当我使用模拟器在同一台机器上调用它时,麻烦才会开始。

以下是我到目前为止尝试过的组合(脚本位于根目录的“zz”子目录中):

private static String url_all_venues = "http://10.0.2.2/zz/pullvenuesjson.php";

private static String url_all_venues = "http://10.0.2.2:80/zz/pullvenuesjson.php";

导致以下异常:E / JSON Parser(657):解析数据时出错org.json.JSONException:Value

当我尝试以下内容时:

private static String url_all_venues = "http://10.0.2.2:8080/zz/pullvenuesjson.php";

代码“永远”运行,我在大约5分钟后收到超时错误。

任何想法如何解决这个问题所以我也可以在我的本地网络服务器/模拟器上测试我的应用程序?很可能问题出在我的本地Apache配置中,但是,我不确定......

修改

以下是一些似乎触发错误的代码:

            DefaultHttpClient httpClient = new DefaultHttpClient();
            String paramString = URLEncodedUtils.format(params, "utf-8");
            url += "?" + paramString;
            HttpGet httpGet = new HttpGet(url); 
            HttpResponse httpResponse = httpClient.execute(httpGet);
            HttpEntity httpEntity = httpResponse.getEntity();
            is = httpEntity.getContent();

“url”是上面提到的那个。正如我在下面的评论中提到的,看起来问题来自本地WAMP网络服务器没有正确响应,因为当我通过互联网直接访问“真实”服务器时,代码工作正常(哇,除了改变之外别无其他php脚本的Internet地址的URL)。奇怪的是,当我在本地运行脚本时脚本也能正常工作,但不能通过模拟器。

1 个答案:

答案 0 :(得分:0)

我终于明白了!我使用Log.d(..)记录传输的数据,发现用户名/密码组合无效,因为我没有检查localhost条件...脚本和应用程序现在检索数据很好在本地主机和网络上。感谢您的查询,这些帮助我找到了错误的根源!

[回答我自己是为了避免Q显示为无人接听]