| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- package xin.glue.user.common;
-
- import java.io.IOException;
- import java.security.KeyManagementException;
- import java.security.KeyStoreException;
- import java.security.NoSuchAlgorithmException;
- import java.security.cert.CertificateException;
- import java.security.cert.X509Certificate;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
-
- import javax.net.ssl.HostnameVerifier;
- import javax.net.ssl.SSLContext;
-
- import org.apache.http.HttpEntity;
- import org.apache.http.NameValuePair;
- import org.apache.http.client.entity.UrlEncodedFormEntity;
- import org.apache.http.client.methods.CloseableHttpResponse;
- import org.apache.http.client.methods.HttpPost;
- import org.apache.http.conn.ssl.NoopHostnameVerifier;
- import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
- import org.apache.http.conn.ssl.TrustStrategy;
- import org.apache.http.impl.client.CloseableHttpClient;
- import org.apache.http.impl.client.HttpClients;
- import org.apache.http.message.BasicNameValuePair;
- import org.apache.http.ssl.SSLContextBuilder;
- import org.apache.http.util.EntityUtils;
- //import org.slf4j.Logger;
- //import org.slf4j.LoggerFactory;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONObject;
-
- public class UIJ030055 {
- //private static Logger logger = LoggerFactory.getLogger(UIJ030055.class);
- static CloseableHttpClient httpClient;
- static CloseableHttpResponse httpResponse;
-
- public static CloseableHttpClient createSSLClientDefault() {
- try {
- SSLContext sslContext = new SSLContextBuilder().loadTrustMaterial(null, new TrustStrategy() {
- // 信任所有
- public boolean isTrusted(X509Certificate[] chain, String authType) throws CertificateException {
- return true;
- }
- }).build();
- HostnameVerifier hostnameVerifier = NoopHostnameVerifier.INSTANCE;
- SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslContext, hostnameVerifier);
- return HttpClients.custom().setSSLSocketFactory(sslsf).build();
- } catch (KeyManagementException e) {
- e.printStackTrace();
- } catch (NoSuchAlgorithmException e) {
- e.printStackTrace();
- } catch (KeyStoreException e) {
- e.printStackTrace();
- }
- return HttpClients.createDefault();
-
- }
-
- /**
- * 发送https请求
- *
- * @param jsonPara
- * @throws Exception
- */
- public static String sendByHttp(Map<String, Object> params, String url) {
- try {
- HttpPost httpPost = new HttpPost(url);
- List<NameValuePair> listNVP = new ArrayList<NameValuePair>();
- if (params != null) {
- for (String key : params.keySet()) {
- listNVP.add(new BasicNameValuePair(key, params.get(key).toString()));
- }
- }
- UrlEncodedFormEntity entity = new UrlEncodedFormEntity(listNVP, "UTF-8");
- //logger.info("创建请求httpPost-URL={},params={}", url, listNVP);
- httpPost.setEntity(entity);
- httpClient = UIJ030055.createSSLClientDefault();
- httpResponse = httpClient.execute(httpPost);
- HttpEntity httpEntity = httpResponse.getEntity();
- if (httpEntity != null) {
- String jsObject = EntityUtils.toString(httpEntity, "UTF-8");
- JSONObject jo = JSONObject.parseObject(new String(jsObject));
- String jsonString = "["+JSON.toJSONString(jo)+"]";
- return jsonString;
- } else {
- return null;
- }
- } catch (Exception e) {
- e.printStackTrace();
- return null;
- } finally {
- try {
- httpResponse.close();
- httpClient.close();
- // logger.info("请求流关闭完成");
- } catch (IOException e) {
- // logger.info("请求流关闭出错");
- e.printStackTrace();
- }
- }
- }
-
- public static void main(String[] args) throws Exception {
- Map<String, Object> map = new HashMap<String, Object>();
- map.put("authCode", "FX:123");
- map.put("userName", "jianghaida");
- map.put("pwd", "jianghaida");
-
-
- System.out.println(UIJ030055.sendByHttp(map, "https://218.87.96.132/xg56/webservice/webWaybill/queryIsChecked/20200616S227"));;
- }
- }
|