我正在开发一个简单的应用程序监视器,来轮询我们的API URL,并在无法从响应中获取HTTP 200状态码时发送电子邮件通知我们(这将表明我们的API由于某种原因已停止)。
我正在使用HttpClient 4.1(这很重要,因为它的API与3.x大不相同)。
我们的API是安全的,具有SSL,但是输入:
进入Web浏览器,将你重定向到
而不会导致任何错误。
当HttpClient尝试访问此URL(http://example.com/our-api
)时,它会失败,并显示一个javax.net.ssl.SSLPeerUnverifiedException
异常,其中包含一条消息:“peer not authenticated”。
正如此帖子所证明的那样,我看到其他人经常遇到这种情况(该帖子也提供了一些绕过此问题的方法 - 实际上,我今晚要尝试实现这种解决方案)。
这些帖子(以及其他类似的帖子)没有解释为什么会发生这种情况!因此,我不是问“如何解决此问题?”而是问:“为什么会出现此问题?”在我用其中一个建议的解决方案勇往直前之前,我想知道我正在尝试解决的问题是什么 ;-)