为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Bittrex HTTP API 的 Java“握手期间远程主机关闭连接”

使用 Bittrex HTTP API 的 Java“握手期间远程主机关闭连接”

翻翻过去那场雪 2021-08-19 20:00:55
发出 HTTP 请求时,我突然收到这些错误:Caused by: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshakeat sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1002)at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1385)at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413)at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1397)at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:290)at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:259)at org.apache.http.impl.conn.HttpClientConnectionOperator.connect(HttpClientConnectionOperator.java:125)at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:319)at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:363)at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:219)at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:195)at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:86)它并不总是这样做,它工作了一段时间。然后我使用不同的库甚至不同的 IntelliJ 项目进行测试,仍然是相同的问题。我尝试过的事情:更改我正在使用的端点将 TLS 版本设置为 TLSv1.2(正如我在发出浏览器请求时发现的那样)我可以使用浏览器和 Postman 很好地加载端点。我的代码(使用 Unirest 库):System.setProperty("https.protocols", "TLSv1.2");System.out.println(Unirest.get("https://bittrex.com/api/v1.1/public/getmarketsummary?market=btc-ltc").asString().getBody());我不知道是什么导致了这个问题,这非常令人沮丧。任何帮助,将不胜感激。编辑:更新到 JDK10 解决了这个问题。查看所选答案及其评论线程以获取更多信息。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 337 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信