java - 使用 Apache HTTPAsyncClient 针对每个 HTTPS 请求自定义 SSLContext

标签 java spring httpclient apache-httpasyncclient

我已经使用 Apache HTTP 异步客户端库构建了一个客户端,我有一个 http/https 请求池。问题是我需要使用证书和客户端私钥执行 https 请求。我能够做到这一点,但只有一个 SSLContext,因此,一旦我在那里加载证书+私钥,对端点的所有 HTTPS 请求都将使用这些证书+ key ,我需要在执行 http 之前执行验证如果某些条件有效,则我需要能够加载每个 https 请求的证书+私钥。


    SSLContext context = SSLContext.getInstance("SSL");

      HttpAsyncClient client =
        HttpAsyncClients.custom()            
            .setConnectionManager(manager)
            .setSSLContext(context)
            .build();

提前致谢。

最佳答案

有一个类似的未记录的上下文属性http.ioSession-factory-registry,可用于在每个请求的基础上覆盖默认的SchemeIOSessionStrategy

使用时极其谨慎。

关于java - 使用 Apache HTTPAsyncClient 针对每个 HTTPS 请求自定义 SSLContext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61038500/

相关文章:

java - 在java中处理异常而不导致服务器套接字崩溃?

java - 在 Eclipse 中管理应用程序的 Lite 和 Pro 版本

Java For 语句

spring - Spring JPA::找不到能够从类型转换的转换器

angularjs - 嵌套 REST 资源的 Angular ui-router 状态名称

java - 对象内存管理 Python 与 Java

java - Jboss 中 list 主要属性的签名文件摘要无效

api - Dio(Dart 的 Http 客户端)获取请求不适用于拦截器

java - 如何向外部 Rest Api 发出 Http Post 请求?

java - 在内网使用https获取sun.security.validator.ValidatorException : PKIX path building failed