首页 > 其他分享 >使用fluent api调用https接口时忽略证书异常

使用fluent api调用https接口时忽略证书异常

时间:2023-10-26 14:58:02浏览次数:34  
标签:get create 证书 fluent api build https

不知道为啥,中文互联网对脱胎于httpclient的fluent api介绍太少了,遇到问题也不知道怎么查,只能自己研究,于是遇到问题赶紧记下来

一般情况下我们使用fluent的get方法调用http接口的方式是这样的

Request.get(url)
        .connectTimeout(Timeout.ofMilliseconds(5000))
        .execute()
        .returnResponse();

但如果是自签名的https接口,会报这样的错

javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: Certificates does not conform to algorithm constraints

常规的教程会让我们下载网站证书安装到本机,但是这样太复杂了,只需要对上述代码稍作改动即可

Request.get(url)
        .connectTimeout(Timeout.ofMilliseconds(5000))
     // 自签名证书无法通过校验,所以信任所有证书
        .execute(HttpClients.custom()
            .setConnectionManager(PoolingHttpClientConnectionManagerBuilder.create()
                .setSSLSocketFactory(SSLConnectionSocketFactoryBuilder.create()
                    .setSslContext(SSLContextBuilder.create()
                        .loadTrustMaterial(TrustAllStrategy.INSTANCE)
                        .build())
                    .setHostnameVerifier(NoopHostnameVerifier.INSTANCE)
                    .build())
                .build())
            .build())
        .returnResponse();

直接信任所有证书即可

标签:get,create,证书,fluent,api,build,https
From: https://www.cnblogs.com/whiteEyeborw/p/17789398.html

相关文章

  • 「实用技巧」后端如何使用 Eolink Apikit 快速调试接口?
    程序员最讨厌的两件事:写文档别人不写文档写文档、维护文档比较麻烦,而且费时,还会经常出现API更新了,但文档还是旧的,各种同步不一致的情况,从而耽搁彼此的时间,大多数开发人员不愿意写API文档。EolinkApikit为后端工程师提供API文档的创建与自动化生成、快速接口调试、以......
  • LR录制https协议脚本前配置
    LR录制https安全协议脚本前的设置在IE中添加安全证书打开IE浏览器,选择“工具—Internet选项—内容”,点击“证书”导入相应的证书,如下图在LR中配置证书获取pem格式证书因为loadrunner只支持pem格式的证书,所以要将证书转换格式;这里就需要用到openssl工具,进入cmd命令窗口,进入openssl的......
  • Kafka 生产者API,消费者API,拦截器,流计算
    pom文件如下:<dependencies> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <version>2.0.0</version> </dependency> <dependency> <groupId......
  • HttpServletResponse
    2023.10.251.可以设置http头标response.setHeader("Refresh","3");//三秒刷新页面一次2.可以设置cookieCookiec1=newCookie("username","only");response.addCookie(c1);3.可以输出返回数据HttpServleteResponse.getOutputStream().write();......
  • 603-60API资源对象StorageClass、Ceph存储 6.3-6.5
    一、NFS存储使用master-1-230节点做NFS服务器,具体安装步骤参考:https://www.cnblogs.com/pythonlx/p/17766242.html (4.1在master节点搭建NFS)node节点查看NFS挂载目录##showmount-e192.168.1.230Exportlistfor192.168.1.230:/data/kubernetes*/data/nfs_test*......
  • docker buildx https
    :443:connect:connectionrefuseddockerbuildx指定了配置文件,使用http,但却未生效,它还是使用httpsloadmetadata源数据。目前解决方案:升级目标网址的证书为https解决。ps:猜测是因为镜像moby/buildkit:buildx-stable-1的原因,但是目前还没有证据。......
  • Apipost现已支持连接数据库!
    Apipost提供了数据库连接功能,在接口调试时可以使用数据库获取入参或进行断言校验。目前的Apipost支持:Mysql、SQLSever、Oracle、Clickhouse、达梦数据库、PostgreSQL、Redis、MongoDB8种数据库的连接操作新建数据库连接:在「项目设置」-「公共资源维护」-「连接数据库」中配置需......
  • http 和 https的区别?
    http原理:客户端通过tcp网络与服务器建立连接,客服端发送请求给服务器,服务器返回响应给客户端,然后关闭连接。https原理:1.客户端向服务器发起请求并传输各类信息,2.服务器向客户端传输各类信息和证书,3.客户端验证服务器的合法性,通过继续不通过断开连接。     4.客户端产生一个......
  • Apipost现已支持连接数据库!
    Apipost提供了数据库连接功能,在接口调试时可以使用数据库获取入参或进行断言校验。目前的Apipost支持:Mysql、SQLSever、Oracle、Clickhouse、达梦数据库、PostgreSQL、Redis、MongoDB8种数据库的连接操作新建数据库连接:在「项目设置」-「公共资源维护」-「连接数据库」中配置......
  • Wordpress Restful API Auth
    1.0Whydoesitnotwork? DELETE|http://127.0.0.1/wordpress.002/wp-json/wp/v2/smokes/20{"code":"rest_cannot_delete","message":"Sorry,youarenotallowedtodeletethispost.","data"......