当前位置: 代码迷 >> Android >> 经过httpurlconnection获取服务器端的inputstream为什么会是空的呢
  详细解决方案

经过httpurlconnection获取服务器端的inputstream为什么会是空的呢

热度:59   发布时间:2016-04-28 08:13:04.0
通过httpurlconnection获取服务器端的inputstream为什么会是空的呢
如题  代码如下
public static String requestPost(String linkAddress, int timeout) {
  String result = null;
  try {
   URL url = new URL(linkAddress); 
   setProxy();
   HttpURLConnection conn = (HttpURLConnection) url.openConnection();
   conn.setConnectTimeout(timeout * 1000);
   conn.connect();
   int state = conn.getResponseCode();
   System.out.println(state);
   System.out.println(linkAddress);
   if (state == HttpURLConnection.HTTP_OK) {
    InputStream in = conn.getInputStream();
    System.out.println("$$$$$$"+in.available());
    BufferedReader reader = new BufferedReader(new InputStreamReader(in, HTTP.UTF_8));
    String line = null;
    while ((line = reader.readLine()) != null) {
     if(result==null){
      result=line;
     }else{
     result += line;
     }
    }
   }
  } catch (MalformedURLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return result;
}
服务器端返回的state是200  也就是访问是成功的  但是为什么服务器端的流得不到呢?   流确实存在  我用手机就可以正常运行  ,而用模拟器就不行  ,求解?  其中setProxy()是设置代理  通过代理的方式访问的


------解决方案--------------------
用设备测试吧,
  相关解决方案