调用https

时间:2015-08-17 08:54:05

标签: java rest ssl

我正在用Java构建一个应用程序,我希望对https服务进行休息调用。该应用程序是用Java Standard Edition编写的。

我正在使用If This Then That作为测试,但我希望应用程序连接到用户键入的任何https站点。 对于IFTTT,我使用以下URL:

https://maker.ifttt.com/trigger/{my_event} /with/key/{my_app_key}

我收到以下错误:

sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

我认为此错误意味着用于IFTTT的根证书不在我的cacerts信任库中。我理解这个问题的解决方案可能是添加它。根据chrome,证书路径终止于根证书名称“Go Daddy Root Certificate Authority-G2”。

我想如果我使用keytool将它添加到我的cacerts中它会起作用。但是我希望我的应用程序的用户输入各种URL。我不想只允许特定的互联网子集。我也不想禁用证书检查。 Chrome,IE和Firefox都可以毫无问题地识别IFTTT网站。 为什么Java中的标准cacerts文件不能识别这个? 我可以让Java使用包含所有这些网站的系统cacerts文件吗? (这必须适用于Windows上的Java,Max和各种Linux风格。)

0 个答案:

没有答案