2013-12-12 49 views
0

我正在开发一个应用程序,我需要调用android上的按钮单击的web服务。在android中的http响应

HttpURLConnection httpConn = (HttpURLConnection) conn; 
httpConn.setAllowUserInteraction(false); 
httpConn.setInstanceFollowRedirects(true); 
httpConn.setRequestMethod("GET"); 
httpConn.connect(); 
response = httpConn.getResponseCode(); 

我得到的pesponse代码是-1第一次,然后它给了我200请求代码是好的。什么是问题(我正在使用https网址)。

回答

0

您必须实现SocketFactory,LayeredSocketFactory类并管理套接字并实现X509TrustManager。

检查此链接 http://www.java2s.com/Code/Android/Network/FakeSocketFactory.htm

+0

什么?什么是疯狂。他只是想为上帝的缘故做一个GET请求... –

+0

有时候得到回应.. idont认为我需要什么@Bhargav Panchal提到... – karan421

0

我有一个建议尝试使用AsyncHttpclient从服务器获取响应,不需要这个长代码。

http://loopj.com/android-async-http/

AsyncHttpClient asyncHttpClient=new AsyncHttpClient(); 

      asyncHttpClient.get("http://10.0.2.2/fanaticmobile/log_in.php", new AsyncHttpResponseHandler(){ 
       @Override 
       public void onFailure(Throwable arg0, String arg1) { 
        // TODO Auto-generated method stub 
        super.onFailure(arg0, arg1); 
       } 
       @Override 
       public void onSuccess(String arg0) { 
        // TODO Auto-generated method stub 
        super.onSuccess(arg0); 
       } 
      }); 

只需在项目中包含的jar文件将是简单易用。

0

也许你需要等待更多的获得建立连接,所以设置一个超时的连接:

httpConn.setConnectTimeout(10000); 
httpConn.setReadTimeout(10000);