public final class HttpConnectionManager
extends java.lang.Object
| 限定符和类型 | 字段和说明 |
|---|---|
static int |
CMWAP_CHARGEPAGE_MAX_COUNT |
static java.lang.String |
HEADER_REQUEST_ACCEPT_CHARSET |
static java.lang.String |
HEADER_REQUEST_ACCEPT_LANGUAGE |
static java.lang.String |
HEADER_REQUEST_CACHE_CONTROL |
static java.lang.String |
HEADER_REQUEST_CONNECTION |
static java.lang.String |
HEADER_REQUEST_CONTENT_LENGTH |
static java.lang.String |
HEADER_REQUEST_CONTENT_TYPE |
static java.lang.String |
HEADER_REQUEST_COOKIE |
static java.lang.String |
HEADER_REQUEST_USER_AGENT |
static java.lang.String |
HEADER_RESPONSE_CONTENT_LENGTH |
static java.lang.String |
HEADER_RESPONSE_CONTENT_TYPE |
static java.lang.String |
HEADER_RESPONSE_LOCATION |
static java.lang.String |
HEADER_RESPONSE_SET_COOKIE |
static int |
REDIRECT_MAX_COUNT |
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
addCookie(java.lang.String url,
java.lang.String cookie)
添加指定的Cookie
Cookie由name,domain和path联合唯一标识,无domain时默认为当前URL的域(注意,若指定domain为当前域,其结果却为"."
|
static void |
bindApplicationContext(android.content.Context context) |
static HttpResponseResult |
doGet(java.lang.String url,
boolean followRedirects,
int connOrReadTimeout,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders) |
static HttpResponseResultStream |
doGetForStream(java.lang.String url,
boolean followRedirects,
int connOrReadTimeout,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders)
进行Http Get请求
|
static HttpResponseResult |
doPost(java.lang.String url,
boolean followRedirects,
int connOrReadTimeout,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders,
java.io.InputStream postData,
boolean calculateContentLength) |
static HttpResponseResult |
doPost(java.lang.String url,
boolean followRedirects,
int connOrReadTimeout,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders,
java.util.List<MultipartParam> postParams,
java.lang.String postParamsEnc) |
static HttpResponseResult |
doPost(java.lang.String url,
boolean followRedirects,
int connOrReadTimeout,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders,
java.util.Map<java.lang.String,java.lang.String> postParams,
java.lang.String postParamsEnc) |
static HttpResponseResultStream |
doPostForStream(java.lang.String url,
boolean followRedirects,
int connOrReadTimeout,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders,
java.io.InputStream postData,
boolean calculateContentLength)
进行Http Post请求,将以用户指定的Content-Type来提交任意数据,默认Content-Type为application/octet-stream
|
static HttpResponseResultStream |
doPostForStream(java.lang.String url,
boolean followRedirects,
int connOrReadTimeout,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders,
java.util.List<MultipartParam> postParams,
java.lang.String postParamsEnc)
进行Http Post请求,将强制以multipart/form-data作为Content-Type来提交表单参数
|
static HttpResponseResultStream |
doPostForStream(java.lang.String url,
boolean followRedirects,
int connOrReadTimeout,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders,
java.util.Map<java.lang.String,java.lang.String> postParams,
java.lang.String postParamsEnc)
进行Http Post请求,将强制以application/x-www-form-urlencoded作为Content-Type来提交表单参数
|
static java.lang.String |
getCookies(java.lang.String url)
根据URL获取Cookies 不同Cookie之间使用"分号+空格"的方式分隔
|
static void |
ignoreChargePageWhenCMWap(boolean ignore)
设置在使用中国移动CMWap时是否忽略CMWap的资费页面
|
static void |
removeAllCookies(java.lang.String[] loadUrlsAfterRemove)
删除所有的Cookies
|
static void |
removeSessionCookies()
删除所有的Session Cookies,即没有expires的Cookies
|
static void |
setAcceptCookie(boolean accept) |
static void |
setUseConcatURLModeWhenCMWap(boolean useConcatURLModeWhenCMWap)
设置在使用中国移动CMWap时是否使用拼接URL的模式
|
public static final java.lang.String HEADER_REQUEST_ACCEPT_LANGUAGE
public static final java.lang.String HEADER_REQUEST_CONNECTION
public static final java.lang.String HEADER_REQUEST_CACHE_CONTROL
public static final java.lang.String HEADER_REQUEST_ACCEPT_CHARSET
public static final java.lang.String HEADER_REQUEST_CONTENT_TYPE
public static final java.lang.String HEADER_REQUEST_CONTENT_LENGTH
public static final java.lang.String HEADER_REQUEST_USER_AGENT
public static final java.lang.String HEADER_REQUEST_COOKIE
public static final java.lang.String HEADER_RESPONSE_CONTENT_TYPE
public static final java.lang.String HEADER_RESPONSE_CONTENT_LENGTH
public static final java.lang.String HEADER_RESPONSE_LOCATION
public static final java.lang.String HEADER_RESPONSE_SET_COOKIE
public static final int REDIRECT_MAX_COUNT
public static final int CMWAP_CHARGEPAGE_MAX_COUNT
public static void bindApplicationContext(android.content.Context context)
public static void setAcceptCookie(boolean accept)
public static void setUseConcatURLModeWhenCMWap(boolean useConcatURLModeWhenCMWap)
设置在使用中国移动CMWap时是否使用拼接URL的模式
useConcatURLModeWhenCMWap - public static void ignoreChargePageWhenCMWap(boolean ignore)
设置在使用中国移动CMWap时是否忽略CMWap的资费页面
ignore - public static HttpResponseResultStream doGetForStream(java.lang.String url, boolean followRedirects, int connOrReadTimeout, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders) throws java.io.IOException
url - 请求的urlfollowRedirects - 是否自动重定向connOrReadTimeout - 连接和读取的超时时间,以毫秒为单位,设为0表示永不超时requestHeaders - 请求头,不需要时可传nulljava.io.IOExceptionpublic static HttpResponseResult doGet(java.lang.String url, boolean followRedirects, int connOrReadTimeout, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders) throws java.io.IOException
java.io.IOExceptionpublic static HttpResponseResultStream doPostForStream(java.lang.String url, boolean followRedirects, int connOrReadTimeout, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders, java.util.Map<java.lang.String,java.lang.String> postParams, java.lang.String postParamsEnc) throws java.io.IOException
url - 请求的urlfollowRedirects - 是否自动重定向connOrReadTimeout - 连接和读取的超时时间,以毫秒为单位,设为0表示永不超时requestHeaders - 请求头,不需要时可传nullpostParams - 提交的POST参数,不需要时可传nullpostParamsEnc - 对提交的POST参数进行URL编码的字符集,不需要URL编码时可传nulljava.io.IOExceptionpublic static HttpResponseResult doPost(java.lang.String url, boolean followRedirects, int connOrReadTimeout, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders, java.util.Map<java.lang.String,java.lang.String> postParams, java.lang.String postParamsEnc) throws java.io.IOException
java.io.IOExceptionpublic static HttpResponseResultStream doPostForStream(java.lang.String url, boolean followRedirects, int connOrReadTimeout, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders, java.util.List<MultipartParam> postParams, java.lang.String postParamsEnc) throws java.io.IOException
url - 请求的urlfollowRedirects - 是否自动重定向connOrReadTimeout - 连接和读取的超时时间,以毫秒为单位,设为0表示永不超时requestHeaders - 请求头,不需要时可传nullpostParams - 提交的POST参数,不需要时可传nullpostParamsEnc - 对提交的POST参数进行URL编码的字符集,不需要URL编码时可传nulljava.io.IOExceptionpublic static HttpResponseResult doPost(java.lang.String url, boolean followRedirects, int connOrReadTimeout, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders, java.util.List<MultipartParam> postParams, java.lang.String postParamsEnc) throws java.io.IOException
java.io.IOExceptionpublic static HttpResponseResultStream doPostForStream(java.lang.String url, boolean followRedirects, int connOrReadTimeout, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders, java.io.InputStream postData, boolean calculateContentLength) throws java.io.IOException
url - 请求的urlfollowRedirects - 是否自动重定向connOrReadTimeout - 连接和读取的超时时间,以毫秒为单位,设为0表示永不超时requestHeaders - 请求头,不需要时可传nullpostData - 提交的POST数据,不需要时可传nullcalculateContentLength - 是否计算Content-Length的值。注意,该计算是通过缓存来实现的,对于大数据,应该传false或者自己传入Content-Length,否则会严重影响性能java.io.IOExceptionpublic static HttpResponseResult doPost(java.lang.String url, boolean followRedirects, int connOrReadTimeout, java.util.Map<java.lang.String,java.util.List<java.lang.String>> requestHeaders, java.io.InputStream postData, boolean calculateContentLength) throws java.io.IOException
java.io.IOExceptionpublic static void removeAllCookies(java.lang.String[] loadUrlsAfterRemove)
删除所有的Cookies
loadUrlsAfterRemove - 在删除所有Cookies后需要立即加载Cookies到Ram的Urls,立即加载的原因是删除Cookies操作会清除Ram结构,如果在将来某个不确定的时间加载Cookies可能会同步到其他进程的Cookies,这可能不是当前方法调用的初衷。该参数可以为nullpublic static void removeSessionCookies()
删除所有的Session Cookies,即没有expires的Cookies
public static java.lang.String getCookies(java.lang.String url)
根据URL获取Cookies
不同Cookie之间使用"分号+空格"的方式分隔
url - public static void addCookie(java.lang.String url,
java.lang.String cookie)
添加指定的Cookie
Cookie由name,domain和path联合唯一标识,无domain时默认为当前URL的域(注意,若指定domain为当前域,其结果却为"."+域,与未指定的不属于同一个Cookie),path是一个相对于domain的路径,无path时默认为当前URL的路径(以"/"结尾时即为自己,否则为其直接上级)
Cookie具有继承性,URL的域是domain的子域或路径是path的子级,也能获取到该Cookie
综上,使用该方法时要格外小心,同名Cookie并不一定会被替换,又由于Cookie具有继承性,从而可能导致一个URL对应多个同名Cookie的现象
url - cookie -