我正在使用JavaLite实现,并且在请求HTTP服务时一切正常但在尝试从服务的HTTPS版本获取数据时,我得到了HttpException" Failed URL"
这是我的代码:
String test = Http.get(url + "/eds/api/v1/certificados").header("Authorization", "Basic " + Credentials).header("APIKey", APIKey).header("Accept", "application/json").text();
还尝试了
{{1}}
两者的行为方式相同,如果URL是HTTP我可以获取数据,如果URL是HTTPS catch" Failed URL"。我已经使用SOAPui测试了REST服务,并且HTTPS服务器工作正常。
尝试使用标头在HTTPS上发送GET时,我有什么建议吗?
先谢谢了。 路易斯
答案 0 :(得分:0)
我打算建议该网站的数字证书未由Java JRE证书存储中包含的证书颁发机构签名。
以下是您可以做的事情:
Java的文件是:
$JAVA_HOME/jre/lib/security/cacerts
您需要运行此命令:
keytool -list -keystore cacerts
提示输入密码时,只需按Enter键即可。
如果您没有看到用于签署网站证书的CA证书,则会出现此错误。
如何解决:
或:
使用浏览器从站点获取证书,并使用以下命令将其导入本地Java数据库:
keytool -importcert ...
有关keytool
计划的更多信息:
keytool --help