• 网络编程最佳实践一


    HttpUtil.java

    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.net.HttpURLConnection;
    import java.net.URL;
    
    import okhttp3.OkHttpClient;
    import okhttp3.Request;
    
    /**
     * Created by 王德强 on 2017/7/25.
     */
    
    public class HttpUtil{
        public static void sendHttpRequest(final String address,final HttpCallbackListener listener){
            new Thread(new Runnable() {
                @Override
                public void run() {
                    HttpURLConnection connection = null;
                    try {
                        URL url = new URL(address);
                        connection = (HttpURLConnection) url.openConnection();
                        connection.setRequestMethod("GET");
                        connection.setReadTimeout(8000);
                        connection.setConnectTimeout(8000);
                        connection.setDoOutput(true);
                        connection.setDoInput(true);
                        InputStream in = connection.getInputStream();
                        BufferedReader reader = new BufferedReader(new InputStreamReader(in));
                        StringBuilder response = new StringBuilder();
                        String line;
                        while ((line=reader.readLine())!=null){
                            response.append(line);
                        }
                        if(listener!=null){
                            listener.onFinish(response.toString());
                        }
                    } catch (Exception e) {
                        if(listener!=null){
                            listener.onError(e);
                        }
                    }finally {
                        if(connection!=null){
                            connection.disconnect();
                        }
                    }
                }
            }).start();
        }

    回调机制 接口
    HttpCallbackListener.interfac

    
    interface HttpCallbackListener {
        void onFinish(String response);
        void onError(Exception e);
    }
    

    以后每当需要发起一条Http请求的时候就可以这样写:

    String address = "http://www.baidu.com";
    String response = HttpUtil.sendHttpRequest(address);
  • 相关阅读:
    Andorid中写文件后在电脑上看不到的解决办法
    【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性
    OpenCV入门学习笔记
    视频播放(iOS开发)
    音频播放(iOS开发)
    iPad开发(相对于iPhone开发时专有的API)
    静态库/内存分析/通讯录/换肤/硬件信息获取
    Alpha冲刺! Day1
    软工团队
    软工团队
  • 原文地址:https://www.cnblogs.com/CCCrunner/p/11781930.html
Copyright © 2020-2023  润新知