zoukankan      html  css  js  c++  java
  • Android HttpGet和HttpPost设置超时

    HttpPost:

    private Runnable runnable = new Runnable() {
            @Override
            public void run() {
                String url = BaseServicesInfo.SERVER_BASE_PATH + fileName;
                HttpPost httpRequest = new HttpPost(url);
                try{
                    HttpEntity entity = new UrlEncodedFormEntity(params);
                    httpRequest.setEntity(entity);
                    HttpClient client = new DefaultHttpClient();
                    // 请求超时
                    client.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 20000);
                    // 读取超时
                    client.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 20000    );
                    HttpResponse response = client.execute(httpRequest);
                    if(response.getStatusLine().getStatusCode() == 200){
                        str = EntityUtils.toString(response.getEntity());
                        Message msg = new Message();
                        Bundle data = new Bundle();
                        data.putString("value", str);
                        msg.setData(data);
                        handler.sendMessage(msg);
                    }else{
                        str = String.valueOf(response.getStatusLine().getStatusCode());
                        Message msg = new Message();
                        Bundle data = new Bundle();
                        data.putString("error", str);
                        msg.setData(data);
                        handler.sendMessage(msg);
                    }
                }catch(Exception e){
                    e.printStackTrace();
                    Message msg = new Message();
                    Bundle data = new Bundle();
                    data.putString("error", str);
                    msg.setData(data);
                    handler.sendMessage(msg);
                }
            }
        };
    

      

    HttpGet:

    Runnable runnable = new Runnable() {
            @Override
            public void run() {
                HttpURLConnection conn = null;
                InputStream inputStream = null;
                try {
                    URL url = new URL(baseUrl);
                    conn = (HttpURLConnection)url.openConnection();
                    conn.setConnectTimeout(10000);
                    conn.setReadTimeout(8000);
                    conn.setDoInput(true);
                    conn.setRequestMethod("GET");
                    conn.setRequestProperty("Content-Type", "text/html");
                    conn.setRequestProperty("Accept-Charset", "utf-8");
                    conn.setRequestProperty("contentType", "utf-8");
                    inputStream = conn.getInputStream();
                    byte[] buffer = null;
                    if(conn.getResponseCode() == 200){
                        buffer = new byte[1024];
                        ByteArrayOutputStream out = new ByteArrayOutputStream();
                        int len;
                        while ((len = inputStream.read(buffer)) != -1)
                        {
                            out.write(buffer, 0, len);
                        }
                        buffer = out.toByteArray();
                    }
                    mCallback.HandleAsync(buffer);
                    SendMsg("value",buffer);
                } catch (Exception e) {
                    e.printStackTrace();
                    Log.e("sjr","Network-error");
                }
                finally{
                    try {
                        if(inputStream != null){
                            inputStream.close();
                        }
                        if(conn != null){
                            conn.disconnect();
                        }
                    } catch (IOException e) {
                        e.printStackTrace();
                        Log.e("sjr","InvokeWebServiceHelper类中释放资源出错");
                    }
                }
            }
        };
    

      

  • 相关阅读:
    生成二维码
    IIS与Apache同时使用80端口
    C# 时间类型
    EXT 省市三级联动及默认选择
    拼音首字母查询汉字内容
    web.config
    使用input=file上传
    Js 扩展
    Linux 调试错误
    图的最短路径Dijkstra
  • 原文地址:https://www.cnblogs.com/qq458978/p/5800137.html
Copyright © 2011-2022 走看看