javahttpsclient信任所有证书-创新互联

pack

创新互联成都网站建设按需定制制作,是成都网站营销推广公司,为加固提供网站建设服务,有成熟的网站定制合作流程,提供网站定制设计服务:原型图制作、网站创意设计、前端HTML5制作、后台程序开发等。成都网站设计热线:13518219792age httpsclient;

import java.io.IOException;
import java.util.List;
import java.util.ArrayList;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.apache.http.client.entity.EntityBuilder;
import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
import java.security.KeyStore;
import iF.*;

import javax.net.ssl.SSLContext;
import org.apache.http.conn.ssl.SSLContexts;
import org.apache.http.conn.ssl.TrustSelfSignedStrategy;

import com.google.gson.Gson;

public class MyHttp {
   public static void main(String[] args) throws Exception{

//      KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
//      SSLContext sslcontext = SSLContexts.custom().loadTrustMaterial(trustStore, new TrustSelfSignedStrategy()).build();
//      SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslcontext,SSLConnectionSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
      SSLContext sslcontext = SSLContext.getInstance("SSLv3"); //建立证书实体
      javax.net.ssl.TrustManager[] trustAllCerts = new javax.net.ssl.TrustManager[1];
      javax.net.ssl.TrustManager tm = new miTM();
      trustAllCerts[0] = tm;
      sslcontext.init(null, trustAllCerts, null);
      SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslcontext,SSLConnectionSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
      CloseableHttpClient httpclient = HttpClients.custom().setSSLSocketFactory(sslsf).build();

       try{
           String url = "https://127.0.0.1:8787/";

           HttpPost httppost = new HttpPost(url);
           Gson gson = new Gson();
           EntityBuilder entitybuilder = EntityBuilder.create();
//           GetLiveListReq req = new GetLiveListReq();
//           req.setMsgType("GetLiveList");
//           req.setNum(1);
//           req.setStart(1);
//           req.setSessionId("1001");
           LoginReq req = new LoginReq();
           req.setMsgType("Login");
           req.setUserName("11");
           entitybuilder.setText(gson.toJson(req));
           httppost.setEntity(entitybuilder.build());

           System.out.println("executing request " + httppost.getURI());

           ResponseHandler<String> responseHandler = new ResponseHandler<String>(){
               public String handleResponse(final HttpResponse response) throws ClientProtocolException,IOException{
                   int status = response.getStatusLine().getStatusCode();
                   if (status >= 200 && status < 400){
                      System.out.println("Send success");
                       HttpEntity entity = response.getEntity();
                       return entity !=null ? EntityUtils.toString(entity) : null;
                   }else{
                       throw new ClientProtocolException("Unexpected response status: " + status);
                   }
               }
           };
           String responseBody = httpclient.execute(httppost,responseHandler);
           System.out.println("-------------------------------------------");
           System.out.println(responseBody);
           System.out.println("-------------------------------------------");
       }finally{
           httpclient.close();
       }
   }

   static class miTM implements javax.net.ssl.TrustManager,
   javax.net.ssl.X509TrustManager {
      public java.security.cert.X509Certificate[] getAcceptedIssuers() {
         return null;
      }

      public boolean isServerTrusted(
            java.security.cert.X509Certificate[] certs) {
         return true;
      }

      public boolean isClientTrusted(
            java.security.cert.X509Certificate[] certs) {
         return true;
      }

      public void checkServerTrusted(
            java.security.cert.X509Certificate[] certs, String authType)
                  throws java.security.cert.CertificateException {
         return;
      }

      public void checkClientTrusted(
            java.security.cert.X509Certificate[] certs, String authType)
                  throws java.security.cert.CertificateException {
         return;
      }
   }

}

javahttpsclient信
任所有证书

文章题目:javahttpsclient信任所有证书-创新互联
本文网址:https://www.cdcxhl.com/article12/epdgc.html

成都网站建设公司_创新互联,为您提供网站收录做网站手机网站建设品牌网站制作面包屑导航网站设计

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站网页设计