当前位置: 首页 > news >正文

阿里云网站安装域名备案进度查询

阿里云网站安装,域名备案进度查询,基于wordpress的博客系统,在国外可以用高德地图吗目录 一、引入依赖包二、HttpClient方式实现的https请求工具类三、测试类 一、引入依赖包 引入相关依赖包 <!--lombok用于简化实体类开发--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><option…

目录

    • 一、引入依赖包
    • 二、HttpClient方式实现的https请求工具类
    • 三、测试类

一、引入依赖包

  • 引入相关依赖包

     <!--lombok用于简化实体类开发--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><!--fastjson依赖--><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>2.0.32</version></dependency><!--httpclient依赖--><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.2</version></dependency>
    

二、HttpClient方式实现的https请求工具类

  • https工具类代码

    package com.xz.https;import com.alibaba.fastjson.JSONObject;
    import lombok.extern.slf4j.Slf4j;
    import org.apache.http.HttpEntity;
    import org.apache.http.ParseException;
    import org.apache.http.client.methods.CloseableHttpResponse;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.config.Registry;
    import org.apache.http.config.RegistryBuilder;
    import org.apache.http.conn.socket.ConnectionSocketFactory;
    import org.apache.http.conn.socket.PlainConnectionSocketFactory;
    import org.apache.http.conn.ssl.NoopHostnameVerifier;
    import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
    import org.apache.http.entity.StringEntity;
    import org.apache.http.impl.client.CloseableHttpClient;
    import org.apache.http.impl.client.HttpClients;
    import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
    import org.apache.http.util.EntityUtils;
    import org.springframework.core.io.ClassPathResource;import javax.net.ssl.SSLContext;
    import javax.net.ssl.TrustManager;
    import javax.net.ssl.TrustManagerFactory;
    import javax.net.ssl.X509TrustManager;
    import java.io.IOException;
    import java.security.KeyManagementException;
    import java.security.KeyStore;
    import java.security.KeyStoreException;
    import java.security.NoSuchAlgorithmException;
    import java.security.cert.Certificate;
    import java.security.cert.CertificateException;
    import java.security.cert.CertificateFactory;
    import java.security.cert.X509Certificate;/*** @Description HttpClient方式的 https工具类* @author xz*/
    @Slf4j
    public class HttpsUtil {public static String post(String url, JSONObject content) throws Exception {String returnInfo = "";CloseableHttpResponse response = null;//getTrust():进行证书验证;allTrust:绕过证书验证PoolingHttpClientConnectionManager connectionManager = allTrust();try (CloseableHttpClient client = HttpClients.custom().setConnectionManager(connectionManager).build()) {HttpPost post = new HttpPost(url);//指定报文头post.setHeader("Context-Type", "application/json;charset=UTF-8");//设置entityStringEntity entity = new StringEntity(JSONObject.toJSONString(content), "UTF-8");entity.setContentType("application/json");post.setEntity(entity);//发送请求response = client.execute(post);log.info("response->:{}", response);HttpEntity resEntity = response.getEntity();if (resEntity != null) {returnInfo = EntityUtils.toString(resEntity, "UTF-8");}EntityUtils.consume(resEntity);response.close();return returnInfo;} catch (IOException | ParseException e) {log.info("errorLogs->:{}", e);return returnInfo;}}/*** 绕过验证* @author xz*/public static PoolingHttpClientConnectionManager allTrust() {SSLContext sslContext = null;PoolingHttpClientConnectionManager connectionManager = null;try {sslContext = SSLContext.getInstance("TLSv1.2");X509TrustManager trustManager = new X509TrustManager() {@Overridepublic void checkClientTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException {}@Overridepublic void checkServerTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException {}@Overridepublic X509Certificate[] getAcceptedIssuers() {return new X509Certificate[0];}};sslContext.init(null, new TrustManager[]{trustManager}, null);//设置http和https对应处理socket链接工厂的对象Registry<ConnectionSocketFactory> registry = RegistryBuilder.<ConnectionSocketFactory>create().register("http", PlainConnectionSocketFactory.INSTANCE).register("https", new SSLConnectionSocketFactory(sslContext, NoopHostnameVerifier.INSTANCE)).build();connectionManager = new PoolingHttpClientConnectionManager(registry);} catch (NoSuchAlgorithmException | KeyManagementException e) {log.info("errorLogs->:{}", e);}return connectionManager;}/*** 进行证书验证* @author xz*/public static PoolingHttpClientConnectionManager getTrust() {PoolingHttpClientConnectionManager connectionManager = null;try {CertificateFactory certificateFactory = CertificateFactory.getInstance("x.509");//证书路径ClassPathResource classPathResource = new ClassPathResource("xxxx.pem");Certificate certificate = certificateFactory.generateCertificate(classPathResource.getInputStream());//creat TrustStoreKeyStore keyStore = KeyStore.getInstance("JKS");keyStore.load(null ,null);//Add certificatekeyStore.setCertificateEntry("key",certificate);TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());trustManagerFactory.init(keyStore);//creatSSlContextSSLContext sslContext = SSLContext.getInstance("TLSv1.2");sslContext.init(null,trustManagerFactory.getTrustManagers(),null);//设置http和https对应处理socket链接工厂的对象Registry<ConnectionSocketFactory> registry = RegistryBuilder.<ConnectionSocketFactory>create().register("http", PlainConnectionSocketFactory.INSTANCE).register("https", new SSLConnectionSocketFactory(sslContext)).build();connectionManager = new PoolingHttpClientConnectionManager(registry);} catch (CertificateException | IOException | KeyStoreException | NoSuchAlgorithmException | KeyManagementException e) {log.info("errorLogs->:{}", e);}return connectionManager;}}
    

三、测试类

  • 测试代码

    package com.xz.https;import com.alibaba.fastjson.JSONObject;/*** @author: xz* @since: 2024/1/11 22:17* @description:*/
    public class HttpsUtilsTest {public static void main(String[] args) throws Exception {String url="https://xxx.com.cn:5678/gateway/user/service/getxxxx";UserReq userReq = new UserReq ();userReq .setName("张三");JSONObject parse = (JSONObject)JSONObject.parse(JSONObject.toJSONString(userReq));String result = HttpsUtil.post(url, parse);System.out.println("HttpClient---https请求:"+result);}
    }
    
  • 测试输出结果
    在这里插入图片描述

http://www.yayakq.cn/news/483704/

相关文章:

  • 电子商务网站模板免费下载4399页游网站
  • 营销型网站免费模板下载七牛链接wordpress
  • 深圳做网站哪个好晚上正能量免费下载软件安全
  • 怎么选择锦州网站建设邢台网站制作公司
  • 做网站一年能赚多少钱营销的三个基本概念是什么
  • 泰安网站建设企业精美网站制作公司
  • php企业网站源码下载网站策划书包含的内容
  • 赚钱做任务的网站有哪些电子商务都包括什么
  • 营口旅游网站开发网站优化建设公司
  • 电商网站开发人员Godaddy如何建设网站
  • 网站收录提交入口wordpress二维码手工
  • 企业网站设计步骤建设银行有招投标网站吗
  • 可信赖的宜昌网站建设范县网站建设公司
  • 国内常见的博客网站网站可以自己建立吗
  • 网站描述标签长沙哪里做网站
  • 专业摄影网站推荐廊坊做网站的企业哪家好
  • 网站做404是什么意思百度平台投诉人工电话
  • 企业营销策划心得体会长沙网站优化培训
  • 天空在线网站建设中国软件
  • 广州网站开发定制设计wordpress输出分类
  • 建设网站的基本流程安徽省住房城乡建设厅网站官网
  • 网站备案费一般是多少内蒙古建设工程造价信息网解释
  • 福州有名的公司网站设计南京前十名传媒广告公司
  • 织梦快速做双语网站做外贸主要在那些网站找单
  • 团购网站短信平台wordpress多媒体mp4
  • 商业网站缩写专业手机网站建设平台
  • 山东网站建设设计哈尔滨百度推广排名优化
  • 莲花网站建设桂林市建设工程质量监督站网站
  • 网站开发工具最适合厦门开发网站公司
  • 360网站做二维码做课展网站