有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

HttpClient之间的java差异。createSystem()vs HttpClient。createDefault()?

我正在研究在^{}中创建ClosableHttpClient的方法,我看到了两种可能的方法:

  • .createDefault()使用默认配置创建CloseableHttpClient实例
  • .createSystem()根据系统属性创建具有默认配置的CloseableHttpClient实例

这两者的区别是什么?我知道it is possible to set up a custom client with ^{} to override certain behaviors但是我剩下的问题是:

  • .createDefault()关联的默认值是什么
  • 哪些系统属性影响.createSystem()
  • 是否可以修改使用.createDefault().createDefault()创建的未来客户端的行为

共 (1) 个答案

  1. # 1 楼答案

    出于历史原因(追溯到200x年初),HttpClient默认情况下不考虑系统属性

    What are the defaults associated with .createDefault()?

    这些是HttpClient开发人员选择的项目默认值

    What system properties affect .createSystem()?

    • ssl。TrustManagerFactory。算法
    • javax。网ssl。信任库类型
    • javax。网ssl。信托商店
    • javax。网ssl。信任库提供者
    • javax。网ssl。信任库密码
    • ssl。KeyManagerFactory。算法
    • javax。网ssl。密钥重类型
    • javax。网ssl。密钥库
    • javax。网ssl。密钥复制器
    • javax。网ssl。密钥密码
    • https。协议
    • https。密码套件
    • http。代理主机
    • http。代理端口
    • https。代理主机
    • https。代理端口
    • http。非ProxyHosts
    • https。代理用户
    • http。代理用户
    • https。代理密码
    • http。代理密码
    • http。保持活力
    • http。maxConnections
    • http。代理人

    Is it possible to modify the behavior of future clients that are created with .createDefault() or .createDefault()?

    当然,通过HttpContext