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