使用http在android上调用我的apache webservice

时间:2012-05-31 14:55:43

标签: android database web-services http servlets

我正在开发一个Android应用程序,它允许用户通过我的tomcat webservice在数据库上创建帐户。我用浏览器测试了webservice,它工作正常。所以我尝试使用我的andriod应用程序对该URL使用make Http请求,但它不起作用。

这是我的代码

try{

        HttpClient client = new DefaultHttpClient();
        HttpGet request = new HttpGet();
        URI webservice = new URI("http://my-machine-ip:8080/Login/login?username=jimmy&password=javajava");
        request.setURI(webservice);
        HttpResponse response = client.execute(request);            
    }catch (Exception e1) {
        e1.printStackTrace();
    }

我还设置了互联网权限。 <uses-permission android:name="android.permission.INTERNET" />

检查我的日志我遇到连接错误

05-31 17:46:50.299: W/System.err(17395): org.apache.http.conn.ConnectTimeoutException: Connect to /192.168.0.3:8080 timed out

enter code here

2 个答案:

答案 0 :(得分:0)

使用您的回复对象获取getEntity().getStatusLine()然后获取getStatusCode()getReasonPhrase()

检查状态是否为200,原因是OK

答案 1 :(得分:0)

显然,这是我的防火墙导致的连接问题。通过防火墙访问的应用程序的快速重新配置解决了所有问题