Bladeren bron

添加枚举HttpType

master
ecoolper 8 jaren geleden
bovenliggende
commit
2384b4b863
2 gewijzigde bestanden met toevoegingen van 29 en 20 verwijderingen
  1. +23
    -20
      weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/AbstractRequestExecutor.java
  2. +6
    -0
      weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/RequestHttp.java

+ 23
- 20
weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/AbstractRequestExecutor.java Bestand weergeven

@@ -17,26 +17,29 @@ import okhttp3.ConnectionPool;
public abstract class AbstractRequestExecutor<T, E> implements RequestExecutor<T, E> {

@Override
public T execute(RequestHttp requestHttp, String uri, E data) throws WxErrorException, IOException{
if (requestHttp.getRequestHttpClient() instanceof CloseableHttpClient) {
//apache-http请求
CloseableHttpClient httpClient = (CloseableHttpClient) requestHttp.getRequestHttpClient();
HttpHost httpProxy = (HttpHost) requestHttp.getRequestHttpProxy();
return executeApache(httpClient, httpProxy, uri, data);
}
if (requestHttp.getRequestHttpClient() instanceof HttpConnectionProvider) {
//jodd-http请求
HttpConnectionProvider provider = (HttpConnectionProvider) requestHttp.getRequestHttpClient();
ProxyInfo proxyInfo = (ProxyInfo) requestHttp.getRequestHttpProxy();
return executeJodd(provider, proxyInfo, uri, data);
} else if (requestHttp.getRequestHttpClient() instanceof ConnectionPool) {
//okhttp请求
ConnectionPool pool = (ConnectionPool) requestHttp.getRequestHttpClient();
OkhttpProxyInfo proxyInfo = (OkhttpProxyInfo) requestHttp.getRequestHttpProxy();
return executeOkhttp(pool, proxyInfo, uri, data);
} else {
//TODO 这里需要抛出异常,需要优化
return null;
public T execute(RequestHttp requestHttp, String uri, E data) throws WxErrorException, IOException {
switch (requestHttp.getRequestType()) {
case apacheHttp: {
//apache-http请求
CloseableHttpClient httpClient = (CloseableHttpClient) requestHttp.getRequestHttpClient();
HttpHost httpProxy = (HttpHost) requestHttp.getRequestHttpProxy();
return executeApache(httpClient, httpProxy, uri, data);
}
case joddHttp: {
//jodd-http请求
HttpConnectionProvider provider = (HttpConnectionProvider) requestHttp.getRequestHttpClient();
ProxyInfo proxyInfo = (ProxyInfo) requestHttp.getRequestHttpProxy();
return executeJodd(provider, proxyInfo, uri, data);
}
case okHttp: {
//okhttp请求
ConnectionPool pool = (ConnectionPool) requestHttp.getRequestHttpClient();
OkhttpProxyInfo proxyInfo = (OkhttpProxyInfo) requestHttp.getRequestHttpProxy();
return executeOkhttp(pool, proxyInfo, uri, data);
}
default:
//TODO 这里需要抛出异常,需要优化
return null;
}
}



+ 6
- 0
weixin-java-common/src/main/java/me/chanjar/weixin/common/util/http/RequestHttp.java Bestand weergeven

@@ -17,4 +17,10 @@ public interface RequestHttp<H,P> {
*/
P getRequestHttpProxy();

/**
*
* @return
*/
HttpType getRequestType();

}

Laden…
Annuleren
Opslaan