HttpHelper

public interface IHttpHelper

com.android.tradefed.util.net.IHttpHelper


用于执行 http 请求的辅助方法。

概括

嵌套类

class IHttpHelper.DataSizeException

常数

int MAX_DATA_SIZE

公共方法

abstract String buildParameters ( MultiMap <String, String> paramMap)

构建编码参数字符串。

abstract String buildUrl (String url, MultiMap <String, String> paramMap)

构建完整编码的 URL 请求字符串。

abstract HttpURLConnection createConnection (URL url, String method, String contentType)

创建一个给定的 url。

abstract HttpURLConnection createJsonConnection (URL url, String method)

创建到给定 URL 的连接以传递 json 数据。

abstract HttpURLConnection createXmlConnection (URL url, String method)

创建到给定 URL 的连接以传递 xml 数据。

abstract void doGet (String url, OutputStream outputStream)

对给定 URL 执行 GET HTTP 请求方法并将结果流式传输到ERROR(/OutputStream)

abstract String doGet (String url)

对给定 URL 执行 GET HTTP 请求方法并将其作为String返回。

abstract void doGetIgnore (String url)

对给定 URL 执行 GET,给定 URL 参数忽略结果。

abstract void doGetIgnoreWithRetry (String url)

执行 { doGetIgnore(String)失败时重试。

abstract String doGetWithRetry (String url)

执行 { doGet(String)失败时重试。

abstract String doPostWithRetry (String url, String postData)

对给定 URL 执行 POST HTTP 请求方法并将其作为String返回,失败时重试。

abstract String doPostWithRetry (String url, String postData, String contentType)

对给定 URL 执行 POST HTTP 请求方法并将其作为String返回,失败时重试。

abstract int getInitialPollInterval ()

获取初始轮询间隔(以毫秒为单位)。

abstract int getMaxPollInterval ()

获取最大轮询间隔(以毫秒为单位)。

abstract int getMaxTime ()

获取继续尝试请求的最长时间(以毫秒为单位)。

abstract int getOpTimeout ()

获取操作超时(以毫秒为单位)。

abstract void setInitialPollInterval (int time)

设置初始轮询间隔(以毫秒为单位)。

abstract void setMaxPollInterval (int time)

设置初始轮询间隔(以毫秒为单位)。

abstract void setMaxTime (int time)

设置继续尝试请求的最长时间(以毫秒为单位)。

abstract void setOpTimeout (int time)

设置操作超时(以毫秒为单位)。

常数

最大数据大小

public static final int MAX_DATA_SIZE

常量值:65536 (0x00010000)

公共方法

构建参数

public abstract String buildParameters (MultiMap<String, String> paramMap)

构建编码参数字符串。

参数
paramMap MultiMap :URL 参数

退货
String编码后的参数字符串

投掷
IllegalArgumentException如果编码参数时发生异常。

构建网址

public abstract String buildUrl (String url, 
                MultiMap<String, String> paramMap)

构建完整编码的 URL 请求字符串。

参数
url String : 基本 URL

paramMap MultiMap :URL 参数

退货
String构造的 URL

投掷
IllegalArgumentException如果编码参数时发生异常。

创建连接

public abstract HttpURLConnection createConnection (URL url, 
                String method, 
                String contentType)

创建一个给定的 url。

参数
url URL :要连接的ERROR(/URL)

method String : HTTP 请求方法。例如,GET 或 POST。

contentType String :内容类型。例如,“文本/html”。

退货
HttpURLConnection HttpURL连接

投掷
如果发生 IOException。

创建Json连接

public abstract HttpURLConnection createJsonConnection (URL url, 
                String method)

创建到给定 URL 的连接以传递 json 数据。

参数
url URL :要连接的ERROR(/URL)

method String : HTTP 请求方法。例如,GET 或 POST。

退货
HttpURLConnection ERROR(/HttpURLConnection)

投掷
如果连接失败

创建Xml连接

public abstract HttpURLConnection createXmlConnection (URL url, 
                String method)

创建到给定 URL 的连接以传递 xml 数据。

参数
url URL :要连接的ERROR(/URL)

method String : HTTP 请求方法。例如,GET 或 POST。

退货
HttpURLConnection ERROR(/HttpURLConnection)

投掷
如果连接失败

得到

public abstract void doGet (String url, 
                OutputStream outputStream)

对给定 URL 执行 GET HTTP 请求方法并将结果流式传输到ERROR(/OutputStream)

参数
url String :网址

outputStream OutputStream :响应数据流

投掷
如果检索数据失败

也可以看看:

得到

public abstract String doGet (String url)

对给定 URL 执行 GET HTTP 请求方法并将其作为String返回。

由于远程内容被加载到内存中,因此该方法只能用于相对较小的数据大小。

参考:

参数
url String :网址

退货
String String远程内容

投掷
如果检索数据失败
IHttpHelper.DataSizeException如果检索到的数据 > MAX_DATA_SIZE

忽略

public abstract void doGetIgnore (String url)

对给定 URL 执行 GET,给定 URL 参数忽略结果。

参数
url String :网址

投掷
如果检索数据失败

也可以看看:

doGetIgnoreWithRetry

public abstract void doGetIgnoreWithRetry (String url)

执行 { doGetIgnore(String)失败时重试。

参数
url String :网址

投掷
如果检索数据失败

doGetWithRetry

public abstract String doGetWithRetry (String url)

执行 { doGet(String)失败时重试。

参数
url String :网址

退货
String String远程内容

投掷
如果检索数据失败
IHttpHelper.DataSizeException如果检索到的数据 > MAX_DATA_SIZE

重试后执行

public abstract String doPostWithRetry (String url, 
                String postData)

对给定 URL 执行 POST HTTP 请求方法并将其作为String返回,失败时重试。

由于远程内容被加载到内存中,因此该方法只能用于相对较小的数据大小。

参数
url String :网址

postData String : 连接打开后要发布的数据

退货
String String远程内容

投掷
如果检索数据失败
IHttpHelper.DataSizeException如果检索到的数据 > MAX_DATA_SIZE

重试后执行

public abstract String doPostWithRetry (String url, 
                String postData, 
                String contentType)

对给定 URL 执行 POST HTTP 请求方法并将其作为String返回,失败时重试。

由于远程内容被加载到内存中,因此该方法只能用于相对较小的数据大小。

参数
url String :网址

postData String : 连接打开后要发布的数据

contentType String :内容类型。例如,“文本/html”。

退货
String String远程内容

投掷
如果检索数据失败
IHttpHelper.DataSizeException如果检索到的数据 > MAX_DATA_SIZE

获取初始轮询间隔

public abstract int getInitialPollInterval ()

获取初始轮询间隔(以毫秒为单位)。

退货
int

获取最大轮询间隔

public abstract int getMaxPollInterval ()

获取最大轮询间隔(以毫秒为单位)。

退货
int

获取最大时间

public abstract int getMaxTime ()

获取继续尝试请求的最长时间(以毫秒为单位)。

退货
int

获取操作超时

public abstract int getOpTimeout ()

获取操作超时(以毫秒为单位)。

退货
int

设置初始轮询间隔

public abstract void setInitialPollInterval (int time)

设置初始轮询间隔(以毫秒为单位)。

参数
time int

设置最大轮询间隔

public abstract void setMaxPollInterval (int time)

设置初始轮询间隔(以毫秒为单位)。

参数
time int

设置最大时间

public abstract void setMaxTime (int time)

设置继续尝试请求的最长时间(以毫秒为单位)。

参数
time int

设置操作超时

public abstract void setOpTimeout (int time)

设置操作超时(以毫秒为单位)。

参数
time int