本文主要是介绍Xutils框架-HTTP源码详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
上一篇博客介绍了Xutils框架-HTTP使用详解,这里在介绍一下Xutils框架HTTP模块的内部代码。
按照我在项目中使用的顺序讲解下各个模块:
1.HttpUtils
这个是Xutils框架HTTP模块之中最主要的部分,首先在构造方法中对HTTP进行了各种配置,有connTimeout(连接超时),做多连接次数等。
下面定义的是HTTP的默认参数
private String responseTextCharset = HTTP.UTF_8;//默认编码格式是 utf-8private long currentRequestExpiry = HttpCache.getDefaultExpiryTime();//60sprivate final static int DEFAULT_CONN_TIMEOUT = 1000 * 15; // 15sprivate final static int DEFAULT_RETRY_TIMES = 3;private static final String HEADER_ACCEPT_ENCODING = "Accept-Encoding";private static final String ENCODING_GZIP = "gzip";private final static int DEFAULT_POOL_SIZE = 3;private final static PriorityExecutor EXECUTOR = new PriorityExecutor(DEFAULT_POOL_SIZE);
对于HTTP参数的传递,就必须要提到RequestParams
private List<HeaderItem> headers;//http headprivate List<NameValuePair> queryStringParams;//可以添加键值对参数,也是在http head,(www.baidu.com?ret=1&msg=ss)private HttpEntity bodyEntity;//http body(一般用于自定义)private List<NameValuePair> bodyParams;//http body(一般添加字符串的键值对)private HashMap<String, ContentBody> fileParams;//http body(可以添加File文件的键值对)
这篇关于Xutils框架-HTTP源码详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!