gpt4 book ai didi

java - JAVA 6 中出现 SSL 异常,但 JAVA 8 中没有 SSL 异常

转载 作者:行者123 更新时间:2023-12-01 17:54:57 27 4
gpt4 key购买 nike

我尝试将 java 程序连接到 REST API。

使用相同的代码部分,我在 Java 6 中遇到了 Java 异常,并且在 Java 8 中运行良好。

环境相同:

  • 信任
  • 机器
  • unix 用户

代码:

import java.io.DataInputStream;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

public class MainClass {

public static void main (String[] args){

String serviceUrl = "https://api.domain.com" + "/endpont/path";
try {
URL url = new URL(serviceUrl);
URLConnection connection = null;
try{
connection = url.openConnection();
connection.setRequestProperty("Accept", "application/json");
connection.setRequestProperty("Content-Type", "application/json");
String body = "";
String inputLine;
DataInputStream input = new DataInputStream (connection.getInputStream());
while (((inputLine = input.readLine()) != null)){
body += inputLine;
}
System.out.println(body);
} catch (IOException e) {
e.printStackTrace();
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
}

Java 6 中的错误:sun.security.provider.certpath.SunCertPathBuilderException:无法找到请求目标的有效证书路径

有人知道它有什么不同吗?我可以使用一些技巧在 Java 6 中获得相同的结果吗?

证书的 CN 是通配符:“*.domain.com”。这可能是原因吗?

我尝试了几个API,但都使用了sun SSL层。您知道其他可以替代它吗?

最佳答案

JRE 有自己的 keystore ,where certificates can be stored 。也许您的 Java 6 的 JDK/JRE 具有与 Java 8 不同的 key 。

关于java - JAVA 6 中出现 SSL 异常,但 JAVA 8 中没有 SSL 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60736176/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com