HttpHelper
public
class
HttpHelper
extends Object
implements
IHttpHelper
java.lang.Object | |
↳ | com.android.tradefed.util.net.HttpHelper |
包含用于发出 http 请求的辅助方法
摘要
嵌套类 | |
---|---|
class |
HttpHelper.RequestRunnable
用于使用 |
公共构造函数 | |
---|---|
HttpHelper()
|
公共方法 | |
---|---|
String
|
buildParameters(MultiMap<String, String> paramMap)
构建编码的参数字符串。 |
String
|
buildUrl(String baseUrl, MultiMap<String, String> paramMap)
构建经过编码的完整网址请求字符串。 |
HttpURLConnection
|
createConnection(URL url, String method, String contentType)
创建指向给定网址的链接。 |
HttpURLConnection
|
createJsonConnection(URL url, String method)
创建与给定网址的连接,以传递 JSON 数据。 |
HttpURLConnection
|
createXmlConnection(URL url, String method)
创建与给定网址的连接,以传递 XML 数据。 |
void
|
doGet(String url, OutputStream outputStream)
对给定网址执行 GET HTTP 请求方法,并将结果流式传输到 |
String
|
doGet(String url)
对给定网址执行 GET HTTP 请求方法,并将其作为 |
void
|
doGetIgnore(String url)
针对指定网址使用指定网址参数执行 GET 操作,并忽略结果。 |
void
|
doGetIgnoreWithRetry(String url)
如果失败,执行 { |
String
|
doGetWithRetry(String url)
如果失败,执行 { |
String
|
doPostWithRetry(String url, String postData)
针对给定网址执行 POST HTTP 请求方法,并将其作为 |
String
|
doPostWithRetry(String url, String postData, String contentType)
对给定网址执行 POST HTTP 请求方法,并将其作为 |
int
|
getInitialPollInterval()
获取初始轮询间隔(以毫秒为单位)。 |
int
|
getMaxPollInterval()
获取最大轮询间隔(以毫秒为单位)。 |
int
|
getMaxTime()
获取继续尝试请求的最长时间(以毫秒为单位)。 |
int
|
getOpTimeout()
获取操作超时时间(以毫秒为单位)。 |
IRunUtil
|
getRunUtil()
获取要使用的 |
void
|
setInitialPollInterval(int time)
设置初始轮询间隔(以毫秒为单位)。 |
void
|
setMaxPollInterval(int time)
设置初始轮询间隔(以毫秒为单位)。 |
void
|
setMaxTime(int time)
设置继续尝试请求的最长时间(以毫秒为单位)。 |
void
|
setOpTimeout(int time)
设置操作超时(以毫秒为单位)。 |
公共构造函数
HttpHelper
public HttpHelper ()
公共方法
buildParameters
public String buildParameters (MultiMap<String, String> paramMap)
构建编码的参数字符串。
参数 | |
---|---|
paramMap |
MultiMap :网址参数 |
返回 | |
---|---|
String |
编码的参数字符串 |
buildUrl
public String buildUrl (String baseUrl, MultiMap<String, String> paramMap)
构建完整的编码网址请求字符串。
参数 | |
---|---|
baseUrl |
String :基础网址 |
paramMap |
MultiMap :网址参数 |
返回 | |
---|---|
String |
构建的网址 |
createConnection
public HttpURLConnection createConnection (URL url, String method, String contentType)
创建指向给定网址的链接。
参数 | |
---|---|
url |
URL :要连接的 ERROR(/URL) 。 |
method |
String :HTTP 请求方法。例如 GET 或 POST。 |
contentType |
String :内容类型。例如“text/html”。 |
返回 | |
---|---|
HttpURLConnection |
Http网址Connection |
createJsonConnection
public HttpURLConnection createJsonConnection (URL url, String method)
创建与给定网址的连接,以传递 JSON 数据。
参数 | |
---|---|
url |
URL :要连接的 ERROR(/URL) 。 |
method |
String :HTTP 请求方法。例如 GET 或 POST。 |
返回 | |
---|---|
HttpURLConnection |
ERROR(/HttpURLConnection) |
createXmlConnection
public HttpURLConnection createXmlConnection (URL url, String method)
创建与指定网址的连接,以传递 xml 数据。
参数 | |
---|---|
url |
URL :要连接的 ERROR(/URL) 。 |
method |
String :HTTP 请求方法。例如,GET 或 POST。 |
返回 | |
---|---|
HttpURLConnection |
ERROR(/HttpURLConnection) |
doGet
public void doGet (String url, OutputStream outputStream)
对给定网址执行 GET HTTP 请求方法,并将结果流式传输到 ERROR(/OutputStream)
。
参数 | |
---|---|
url |
String :网址 |
outputStream |
OutputStream :响应数据流 |
doGet
public String doGet (String url)
对给定网址执行 GET HTTP 请求方法,并将其作为 String
返回。
由于远程内容会加载到内存中,因此此方法仅适用于相对较小的数据大小。
参考文献:
- Java 网址连接: http://java.sun.com/docs/books/tutorial/networking/urls/readingWriting.html
- Java 网址 Reader: http://java.sun.com/docs/books/tutorials/networking/urls/reading网址.html
- Java 设置代理: http://java.sun.com/docs/books/tutorial/networking/urls/_setProxy.html
参数 | |
---|---|
url |
String :网址 |
返回 | |
---|---|
String |
String 远程内容 |
抛出 | |
---|---|
IHttpHelper.DataSizeException |
doGetIgnore
public void doGetIgnore (String url)
针对指定网址使用指定网址参数执行 GET 请求,并忽略结果。
参数 | |
---|---|
url |
String :网址 |
doGetIgnoreWithRetry
public void doGetIgnoreWithRetry (String url)
在失败时执行{doGetIgnore(String)
重试。
参数 | |
---|---|
url |
String :网址 |
doGetWithRetry
public String doGetWithRetry (String url)
在失败时执行{doGet(String)
重试。
参数 | |
---|---|
url |
String :网址 |
返回 | |
---|---|
String |
String 远程内容 |
抛出 | |
---|---|
IHttpHelper.DataSizeException |
重试
public String doPostWithRetry (String url, String postData)
针对给定网址执行 POST HTTP 请求方法,并将其作为 String
返回,并在失败后重试。
由于远程内容会加载到内存中,因此此方法仅适用于相对较小的数据大小。
参数 | |
---|---|
url |
String :网址 |
postData |
String :连接打开后要发布的数据 |
返回 | |
---|---|
String |
String 远程内容 |
抛出 | |
---|---|
IHttpHelper.DataSizeException |
doPostWithRetry
public String doPostWithRetry (String url, String postData, String contentType)
对给定网址执行 POST HTTP 请求方法,并将其作为 String
返回,失败时会重试。
由于远程内容会加载到内存中,因此此方法仅适用于相对较小的数据大小。
参数 | |
---|---|
url |
String :网址 |
postData |
String :连接打开后发布的数据 |
contentType |
String :内容类型。例如“text/html”。 |
返回 | |
---|---|
String |
String 远程内容 |
抛出 | |
---|---|
IHttpHelper.DataSizeException |
getInitialPollInterval
public int getInitialPollInterval ()
获取初始轮询间隔(以毫秒为单位)。
返回 | |
---|---|
int |
getMaxPollInterval
public int getMaxPollInterval ()
获取最大轮询间隔(毫秒)。
返回 | |
---|---|
int |
getMaxTime
public int getMaxTime ()
获取继续尝试请求的最长时间(以毫秒为单位)。
返回 | |
---|---|
int |
getOpTimeout
public int getOpTimeout ()
获取操作超时时间(以毫秒为单位)。
返回 | |
---|---|
int |
setInitialPollInterval
public void setInitialPollInterval (int time)
以毫秒为单位设置初始轮询间隔。
参数 | |
---|---|
time |
int |
setMaxPollInterval
public void setMaxPollInterval (int time)
以毫秒为单位设置初始轮询间隔。
参数 | |
---|---|
time |
int |
setMaxTime
public void setMaxTime (int time)
设置持续尝试请求的最长时间(以毫秒为单位)。
参数 | |
---|---|
time |
int |
setOpTimeout
public void setOpTimeout (int time)
设置操作超时时间(以毫秒为单位)。
参数 | |
---|---|
time |
int |