类 WebUtils
- java.lang.Object
-
- com.github.aiosign.utils.WebUtils
-
public class WebUtils extends java.lang.Object网络工具类。- 版本:
- $Id: $Id
- 作者:
- modificial
-
-
方法概要
所有方法 静态方法 具体方法 修饰符和类型 方法 说明 static java.lang.StringbuildQuery(java.util.Map<java.lang.String,java.lang.String> params, java.lang.String charset)buildQuery.static java.lang.Stringdecode(java.lang.String value)使用默认的UTF-8字符集反编码请求参数值。static java.lang.Stringdecode(java.lang.String value, java.lang.String charset)使用指定的字符集反编码请求参数值。static java.lang.StringdoGet(java.lang.String url, java.util.Map<java.lang.String,java.lang.String> params)执行HTTP GET请求。static java.lang.StringdoGet(java.lang.String url, java.util.Map<java.lang.String,java.lang.String> params, java.lang.String charset)执行HTTP GET请求。static java.lang.StringdoPost(java.lang.String url, java.lang.String ctype, byte[] content, int connectTimeout, int readTimeout, java.lang.String proxyHost, int proxyPort, java.lang.String sign)执行HTTP POST请求。static java.lang.StringdoPost(java.lang.String url, java.util.Map<java.lang.String,java.lang.String> params, java.lang.String charset, int connectTimeout, int readTimeout, java.lang.String proxyHost, int proxyPort)执行HTTP POST请求,可使用代理proxy。static java.lang.StringdoPost(java.lang.String url, java.util.Map<java.lang.String,java.lang.String> params, java.util.Map<java.lang.String,FileItem> fileParams, java.lang.String charset, int connectTimeout, int readTimeout, java.lang.String proxyHost, int proxyPort)执行带文件上传的HTTP POST请求。static java.lang.StringdoPostJson(java.lang.String url, java.lang.String content, int connectTimeout, int readTimeout, java.lang.String proxyHost, java.lang.Integer proxyPort, java.lang.String sign)post请求,请求头为application/json,不使用代理static java.lang.Stringencode(java.lang.String value)使用默认的UTF-8字符集编码请求参数值。static java.lang.Stringencode(java.lang.String value, java.lang.String charset)使用指定的字符集编码请求参数值。static java.net.HttpURLConnectiongetConnection(java.net.URL url, java.lang.String method, java.lang.String ctype, java.lang.String sign)getConnection.static java.net.HttpURLConnectiongetConnection(java.net.URL url, java.lang.String method, java.lang.String ctype, java.lang.String proxyHost, int proxyPort, java.lang.String sign)getConnection.protected static java.lang.StringgetResponseAsString(java.net.HttpURLConnection conn)getResponseAsString.static voidsetKeepAliveTimeout(int timeout)设置KeepAlive连接超时时间,一次HTTP请求完成后,底层TCP连接将尝试尽量保持该超时时间后才关闭,以便其他HTTP请求复用TCP连接static voidsetNeedCheckServerTrusted(boolean needCheckServerTrusted)设置是否校验SSL服务端证书static java.util.Map<java.lang.String,java.lang.String>splitUrlQuery(java.lang.String query)从URL中提取所有的参数。
-
-
-
方法详细资料
-
setNeedCheckServerTrusted
public static void setNeedCheckServerTrusted(boolean needCheckServerTrusted)
设置是否校验SSL服务端证书- 参数:
needCheckServerTrusted- true:需要校验(默认,推荐);false:不需要校验(仅当部署环境不便于进行服务端证书校验,且已有其他方式确保通信安全时,可以关闭SSL服务端证书校验功能)
-
setKeepAliveTimeout
public static void setKeepAliveTimeout(int timeout)
设置KeepAlive连接超时时间,一次HTTP请求完成后,底层TCP连接将尝试尽量保持该超时时间后才关闭,以便其他HTTP请求复用TCP连接KeepAlive连接超时时间设置为0,表示使用默认的KeepAlive连接缓存时长(目前为5s)
连接并非一定能保持指定的KeepAlive超时时长,比如服务端断开了连接
注:该方法目前只在JDK8上测试有效
- 参数:
timeout- KeepAlive超时时间,单位秒
-
doPost
public static java.lang.String doPost(java.lang.String url, java.util.Map<java.lang.String,java.lang.String> params, java.lang.String charset, int connectTimeout, int readTimeout, java.lang.String proxyHost, int proxyPort) throws java.io.IOException执行HTTP POST请求,可使用代理proxy。- 参数:
url- 请求地址params- 请求参数charset- 字符集,如UTF-8, GBK, GB2312connectTimeout- 连接超时时间readTimeout- 请求超时时间proxyHost- 代理host,传null表示不使用代理proxyPort- 代理端口,传0表示不使用代理- 返回:
- 响应字符串
- 抛出:
java.io.IOException- 可能会发生io异常
-
doPost
public static java.lang.String doPost(java.lang.String url, java.lang.String ctype, byte[] content, int connectTimeout, int readTimeout, java.lang.String proxyHost, int proxyPort, java.lang.String sign)执行HTTP POST请求。- 参数:
url- 请求地址ctype- 请求类型content- 请求字节数组connectTimeout- 连接超时时间readTimeout- 请求超时时间proxyHost- 代理host,传null表示不使用代理proxyPort- 代理端口,传0表示不使用代理sign- aStringobject.- 返回:
- 响应字符串
-
doPostJson
public static java.lang.String doPostJson(java.lang.String url, java.lang.String content, int connectTimeout, int readTimeout, java.lang.String proxyHost, java.lang.Integer proxyPort, java.lang.String sign)post请求,请求头为application/json,不使用代理- 参数:
url- aStringobject.content- aStringobject.connectTimeout- a int.readTimeout- a int.proxyHost- aStringobject.proxyPort- aIntegerobject.sign- aStringobject.- 返回:
- a
Stringobject.
-
doPost
public static java.lang.String doPost(java.lang.String url, java.util.Map<java.lang.String,java.lang.String> params, java.util.Map<java.lang.String,FileItem> fileParams, java.lang.String charset, int connectTimeout, int readTimeout, java.lang.String proxyHost, int proxyPort) throws java.io.IOException执行带文件上传的HTTP POST请求。- 参数:
url- 请求地址params- 文本请求参数fileParams- 文件请求参数charset- 字符集,如UTF-8, GBK, GB2312connectTimeout- 连接超时时间readTimeout- 请求超时时间proxyHost- 代理host,传null表示不使用代理proxyPort- 代理端口,传0表示不使用代理- 返回:
- 响应字符串
- 抛出:
java.io.IOException- 可能会发生io异常
-
doGet
public static java.lang.String doGet(java.lang.String url, java.util.Map<java.lang.String,java.lang.String> params)执行HTTP GET请求。- 参数:
url- 请求地址params- 请求参数- 返回:
- 响应字符串
-
doGet
public static java.lang.String doGet(java.lang.String url, java.util.Map<java.lang.String,java.lang.String> params, java.lang.String charset) throws java.io.IOException执行HTTP GET请求。- 参数:
url- 请求地址params- 请求参数charset- 字符集,如UTF-8, GBK, GB2312- 返回:
- 响应字符串
- 抛出:
java.io.IOException- 可能会发生io异常
-
getConnection
public static java.net.HttpURLConnection getConnection(java.net.URL url, java.lang.String method, java.lang.String ctype, java.lang.String sign)getConnection.
- 参数:
url- aURLobject.method- aStringobject.ctype- aStringobject.sign- aStringobject.- 返回:
- a
HttpURLConnectionobject.
-
getConnection
public static java.net.HttpURLConnection getConnection(java.net.URL url, java.lang.String method, java.lang.String ctype, java.lang.String proxyHost, int proxyPort, java.lang.String sign)getConnection.
- 参数:
url- aURLobject.method- aStringobject.ctype- aStringobject.proxyHost- aStringobject.proxyPort- a int.sign- aStringobject.- 返回:
- a
HttpURLConnectionobject.
-
buildQuery
public static java.lang.String buildQuery(java.util.Map<java.lang.String,java.lang.String> params, java.lang.String charset) throws java.io.IOExceptionbuildQuery.
- 参数:
params- aMapobject.charset- aStringobject.- 返回:
- a
Stringobject. - 抛出:
java.io.IOException- if any.
-
getResponseAsString
protected static java.lang.String getResponseAsString(java.net.HttpURLConnection conn) throws java.io.IOExceptiongetResponseAsString.
- 参数:
conn- aHttpURLConnectionobject.- 返回:
- a
Stringobject. - 抛出:
java.io.IOException- if any.
-
decode
public static java.lang.String decode(java.lang.String value)
使用默认的UTF-8字符集反编码请求参数值。- 参数:
value- 参数值- 返回:
- 反编码后的参数值
-
encode
public static java.lang.String encode(java.lang.String value)
使用默认的UTF-8字符集编码请求参数值。- 参数:
value- 参数值- 返回:
- 编码后的参数值
-
decode
public static java.lang.String decode(java.lang.String value, java.lang.String charset)使用指定的字符集反编码请求参数值。- 参数:
value- 参数值charset- 字符集- 返回:
- 反编码后的参数值
-
encode
public static java.lang.String encode(java.lang.String value, java.lang.String charset)使用指定的字符集编码请求参数值。- 参数:
value- 参数值charset- 字符集- 返回:
- 编码后的参数值
-
splitUrlQuery
public static java.util.Map<java.lang.String,java.lang.String> splitUrlQuery(java.lang.String query)
从URL中提取所有的参数。- 参数:
query- URL地址- 返回:
- 参数映射
-
-