最近,在使用HttpClient访问Java应用程序中的第三方服务(CURL服务)时,我遇到了如下问题:
javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
....
我在JDK7中遇到了这个问题。通过对这一问题的研究,我提出了两点建议。
public String getProduct(final String accessToken) throws IOException, ParseException {
log.info("accessToken: " + accessToken);
final String stringUrl = "https://api.molt.in/v1/products";
HttpClient httpClient = HttpClientBuilder.create().build();
HttpGet getRequest = new HttpGet(stringUrl);
getRequest.setHeader("Authorization", "Bearer " + accessToken);
HttpContext httpContext = new BasicHttpContext();
HttpResponse response = httpClient.execute(getRequest, httpContext);
log.info("Response Code : " + response.getStatusLine().getStatusCode());
BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
StringBuffer result = new StringBuffer();
String line = "";
while ((line = rd.readLine()) != null) {
result.append(line);
}
log.info("result: " + result);
rd.close();
return result.toString();
}
单丹
服务器关闭握手,因为客户端使用不受支持的协议。请参见这个问题,其中建议使用以下内容启动Java7:
-Dhttps.protocols=TLSv1.1,TLSv1.2
如果服务器证书不受信任,您将从客户机那里得到一个错误(javax.net.ssl.sslhandShakeException:sun.security.validator.validatoreXception:PKIX path building失败),它是这样工作的:Java客户机检查服务器证书,以确保与它对话的机器实际上是它声称的人,在您的示例“api.molt.in”中。检查的工作方式如下:
堆栈:React,NGINX 1.14.0,GUnicorn,Django 2.2.8,Python 3.6.9 错误: 在浏览器:当React调用Django API(当然在请求头中有)时,大约30秒后在浏览器控制台出现CORS错误。 在浏览器控制台:CORS策略阻止从源“https://mydomain”访问“https://mydomain:8000/somethy/”处的XMLHttpRe
我有以下建立SSL连接的简单代码。 如果我在Java8下运行这段代码,它就不起作用了。它以开始SSL握手时停止。 代理端口:8081 如果删除或将其设置为false,它也不能用于Java10。但是通过系统属性设置代理设置是不起作用的。
我们有一个运行在java 7上的服务器端进程:java-version:java version“1.7.0”java(TM)SE运行时环境(build 1.7.0-b147)java HotSpot(TM)64位服务器VM(build 21.0-b17,混合模式) 它接受来自我们自己开发的java应用程序(通过正确签名的JNLP启动)的SSL连接。 通常情况下,不管客户机应用程序是运行在Java
我使用的是react原生版本0.38,不知怎么的,打开开发者菜单的抖动手势已经停止工作。 设备已连接,我已经反转了8081端口。用于keyevent输入的adb外壳命令(adb外壳输入keyevent 82或KEYCODE_菜单)正在启动后台运行的应用程序。 该设备是一款带有5.1.1的小米红米3。 你知道我怎么打开开发者菜单吗?
我正在学习SSL通信,我遇到了这个问题。我正在编写一个简单的客户端,它试图与本地apache服务器握手。服务器启用https。我将服务器证书添加到所有可能的信任存储(jdk中的一个 注意:我从以下教程中获取了代码: http://docs.oracle.com/javase/7/docs/technotes/guides/security/jsse/JSSERefGuide.html#KRB 停留
我通过受ssl v3保护的cxf使用soap服务。我从服务器下载.cer文件,并通过keytool使用以下指令创建JKS文件: 在java代码中,我将此代码用于客户端配置: 对于调用此代码的服务: 当我运行代码时,会发生此错误: 我搜索此错误,我意识到该错误是针对不良信任存储的。但我不知道如何生成正确的信任库。