Class JdkHttpURLConnection
- java.lang.Object
-
- com.gitee.apanlh.util.net.http.client.AbstractHttpClient<HttpURLConnection>
-
- com.gitee.apanlh.util.net.http.client.JdkHttpURLConnection
-
- All Implemented Interfaces:
Closeable,AutoCloseable
public class JdkHttpURLConnection extends AbstractHttpClient<HttpURLConnection>
HTTP客户端
目前基于HttpURLConnection实现- Author:
- Pan
-
-
Constructor Summary
Constructors Constructor Description JdkHttpURLConnection(HttpUrl url, HttpConfig httpConfig)构建请求客户端构造函数
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()voidconnect()建立客户端连接HttpURLConnectiongetClient()获取HTTP客户端InputStreamgetErrorInputStream()原始错误输入流Map<String,List<String>>getHeaderFields()返回请求头InputStreamgetInputStream()原始输入流OutputStreamgetOutputStream()获取原始输出流IntegergetResponseCode()返回响应状态StringgetResponseMessage()返回响应消息voidopen()开启客户端连接voidsend(HttpRequest httpRequest, HttpConfig httpConfig)写入请求voidsetRequestMethod(HttpMethod httpMethod)设置请求方法voidsetRequestProperty(String key, String value)设置一般请求属性如果已经存在带有键的属性 如请求头,或者一些系统属性-
Methods inherited from class com.gitee.apanlh.util.net.http.client.AbstractHttpClient
getHttpConfig, getUrl
-
-
-
-
Constructor Detail
-
JdkHttpURLConnection
public JdkHttpURLConnection(HttpUrl url, HttpConfig httpConfig)
构建请求客户端构造函数- Parameters:
url- HTTP请求对象httpConfig- HTTP配置
-
-
Method Detail
-
getClient
public HttpURLConnection getClient()
Description copied from class:AbstractHttpClient获取HTTP客户端- Specified by:
getClientin classAbstractHttpClient<HttpURLConnection>- Returns:
- T
-
open
public void open() throws HttpConnectionExceptionDescription copied from class:AbstractHttpClient开启客户端连接- Specified by:
openin classAbstractHttpClient<HttpURLConnection>- Throws:
HttpConnectionException- 抛出连接异常
-
connect
public void connect() throws HttpConnectionExceptionDescription copied from class:AbstractHttpClient建立客户端连接- Specified by:
connectin classAbstractHttpClient<HttpURLConnection>- Throws:
HttpConnectionException- 抛出连接异常
-
getOutputStream
public OutputStream getOutputStream() throws HttpException
Description copied from class:AbstractHttpClient获取原始输出流- Specified by:
getOutputStreamin classAbstractHttpClient<HttpURLConnection>- Returns:
- OutputStream
- Throws:
HttpStreamException- 抛出流异常HttpException
-
getInputStream
public InputStream getInputStream() throws HttpStreamException
Description copied from class:AbstractHttpClient原始输入流- Specified by:
getInputStreamin classAbstractHttpClient<HttpURLConnection>- Returns:
- InputStream
- Throws:
HttpStreamException- 抛出流异常
-
getErrorInputStream
public InputStream getErrorInputStream() throws HttpStreamException
Description copied from class:AbstractHttpClient原始错误输入流- Specified by:
getErrorInputStreamin classAbstractHttpClient<HttpURLConnection>- Returns:
- InputStream
- Throws:
HttpStreamException- 抛出流异常
-
getHeaderFields
public Map<String,List<String>> getHeaderFields()
Description copied from class:AbstractHttpClient返回请求头- Specified by:
getHeaderFieldsin classAbstractHttpClient<HttpURLConnection>- Returns:
- Map
-
setRequestMethod
public void setRequestMethod(HttpMethod httpMethod) throws HttpConfigException
Description copied from class:AbstractHttpClient设置请求方法- Specified by:
setRequestMethodin classAbstractHttpClient<HttpURLConnection>- Parameters:
httpMethod- 请求方法类型- Throws:
HttpConfigException
-
setRequestProperty
public void setRequestProperty(String key, String value)
Description copied from class:AbstractHttpClient设置一般请求属性如果已经存在带有键的属性 如请求头,或者一些系统属性- Specified by:
setRequestPropertyin classAbstractHttpClient<HttpURLConnection>- Parameters:
key- 键value- 值
-
send
public void send(HttpRequest httpRequest, HttpConfig httpConfig) throws HttpException
Description copied from class:AbstractHttpClient写入请求- Specified by:
sendin classAbstractHttpClient<HttpURLConnection>- Parameters:
httpRequest- HTTP请求对象httpConfig- HTTP配置- Throws:
HttpException- 抛出HTTP异常
-
close
public void close()
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classAbstractHttpClient<HttpURLConnection>
-
getResponseMessage
public String getResponseMessage() throws HttpStatusException
Description copied from class:AbstractHttpClient返回响应消息- Specified by:
getResponseMessagein classAbstractHttpClient<HttpURLConnection>- Returns:
- String
- Throws:
HttpStatusException- 抛出状态异常
-
getResponseCode
public Integer getResponseCode() throws HttpStatusException
Description copied from class:AbstractHttpClient返回响应状态- Specified by:
getResponseCodein classAbstractHttpClient<HttpURLConnection>- Returns:
- Integer
- Throws:
HttpStatusException- 抛出状态异常
-
-