From 16da0ad1fda1dffa3019425a6887d38ed4217f44 Mon Sep 17 00:00:00 2001 From: wzy <wzy19931122ai@163.com> Date: Sun, 10 Jan 2021 14:26:02 +0800 Subject: [PATCH] Merge branch 'api' into order_reform --- zq-erp/src/main/java/com/matrix/component/wechat/externalInterface/common/HttpsRequest2.java | 53 +++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 37 insertions(+), 16 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/component/wechat/externalInterface/common/HttpsRequest2.java b/zq-erp/src/main/java/com/matrix/component/wechat/externalInterface/common/HttpsRequest2.java index 12856ec..6f05de1 100644 --- a/zq-erp/src/main/java/com/matrix/component/wechat/externalInterface/common/HttpsRequest2.java +++ b/zq-erp/src/main/java/com/matrix/component/wechat/externalInterface/common/HttpsRequest2.java @@ -41,7 +41,7 @@ } Logger log=Logger.getLogger(HttpRequest.class); - + //表示请求器是否已经做了初始化工作 private boolean hasInit = false; @@ -56,6 +56,10 @@ //HTTP请求器 private CloseableHttpClient httpClient; + //证书地址 + private String certLocalPath; + //商户号 + private String mchId; public HttpsRequest2() throws UnrecoverableKeyException, KeyManagementException, NoSuchAlgorithmException, KeyStoreException, IOException { init(); @@ -63,10 +67,10 @@ private void init() throws IOException, KeyStoreException, UnrecoverableKeyException, NoSuchAlgorithmException, KeyManagementException { - KeyStore keyStore = KeyStore.getInstance("PKCS12"); - FileInputStream instream = new FileInputStream(new File(WechatConfigure.certLocalPath));//加载本地的证书进行https加密传输 + KeyStore keyStore = KeyStore.getInstance("PKCS12"); + FileInputStream instream = new FileInputStream(new File(certLocalPath));//加载本地的证书进行https加密传输 try { - keyStore.load(instream,WechatConfigure.certPassword.toCharArray());//设置证书密码 + keyStore.load(instream, mchId.toCharArray());//设置证书密码 } catch (CertificateException e) { e.printStackTrace(); } catch (NoSuchAlgorithmException e) { @@ -76,7 +80,7 @@ } // Trust own CA and all self-signed certs SSLContext sslcontext = SSLContexts.custom() - .loadKeyMaterial(keyStore, WechatConfigure.certPassword.toCharArray()) + .loadKeyMaterial(keyStore, mchId.toCharArray()) .build(); // Allow TLSv1 protocol only SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory( @@ -85,11 +89,11 @@ null, SSLConnectionSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER); - - httpClient = HttpClients.custom() + + httpClient = HttpClients.custom() .setSSLSocketFactory(sslsf) .build(); - // httpClient = HttpClients.custom().build(); + // httpClient = HttpClients.custom().build(); //根据默认超时限制初始化requestConfig requestConfig = RequestConfig.custom().setSocketTimeout(socketTimeout).setConnectTimeout(connectTimeout).build(); hasInit = true; @@ -135,17 +139,17 @@ httpPost.setConfig(requestConfig); log.info("executing request" + httpPost.getRequestLine()); - + try { HttpResponse response = httpClient.execute(httpPost); HttpEntity entity = response.getEntity(); result = EntityUtils.toString(entity, "UTF-8"); - + log.info("POST back date:" + httpPost.getRequestLine()); - - + + } catch (ConnectionPoolTimeoutException e) { // log.e("http get throw ConnectionPoolTimeoutException(wait time out)"); @@ -157,7 +161,7 @@ // log.e("http get throw SocketTimeoutException"); } catch (Exception e) { - e.printStackTrace(); + e.printStackTrace(); // log.e("http get throw Exception"); } finally { @@ -173,7 +177,7 @@ * @param socketTimeout 连接时长,默认10秒 */ public void setSocketTimeout(int socketTimeout) { - this.socketTimeout = socketTimeout; + this.socketTimeout = socketTimeout; resetRequestConfig(); } @@ -183,7 +187,7 @@ * @param connectTimeout 传输时长,默认30秒 */ public void setConnectTimeout(int connectTimeout) { - this.connectTimeout = connectTimeout; + this.connectTimeout = connectTimeout; resetRequestConfig(); } @@ -197,6 +201,23 @@ * @param requestConfig 设置HttpsRequest的请求器配置 */ public void setRequestConfig(RequestConfig requestConfig) { - this.requestConfig = requestConfig; + this.requestConfig = requestConfig; + } + + + public String getMchId() { + return mchId; + } + + public void setMchId(String mchId) { + this.mchId = mchId; + } + + public String getCertLocalPath() { + return certLocalPath; + } + + public void setCertLocalPath(String certLocalPath) { + this.certLocalPath = certLocalPath; } } -- Gitblit v1.9.1