【问题标题】:Which SSL version does Apache HttpClient 3 use and can it be changed?Apache HttpClient 3 使用哪个 SSL 版本,可以更改吗?
【发布时间】:2016-04-13 17:50:52
【问题描述】:

如果我尝试像这样使用 Apache Http 客户端 3.1 连接到 https url..

HttpClient httpClient = new HttpClient()
HttpMethod method = new GetMethod("https://federation/galaxy-class/enterprise/getSheildFrequencies")
int responseCode = httpClient.executeMethod(method)

它在握手中使用哪个 SSL 版本?

如果是SSLv2,有没有办法告诉它使用更高版本或TLS?

【问题讨论】:

    标签: java ssl apache-commons-httpclient


    【解决方案1】:

    至少 Apache HTTP Client 4 使用底层 JRE 进行 SSL 连接。所以这是配置JRE的问题(我想默认启用更高版本)。

    在 SSL 握手中,客户端默认将其支持的最高版本提供给服务器。然后就看服务器支持多高版本了。

    尝试将“javax.net.debug”系统属性设置为“ssl”,这样您就可以看到 SSL 握手,其中也显示了版本。

    【讨论】:

    • 感谢您的建议。您能否给我一个代码示例,说明如何设置此“javax.net.debug”系统属性?
    • 没关系,我想通了,对于任何其他新手来说,它只是 System.setProperty("javax.net.debug", "ssl");
    猜你喜欢
    • 2014-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多