其他分享
首页 > 其他分享> > Android DefaultHttpClient接受所有证书以获取SSL会话帮助

Android DefaultHttpClient接受所有证书以获取SSL会话帮助

作者:互联网

我正在尝试使用Android设备上的apache DefaultHttpClient连接到本地HTTPS服务器.

 DefaultHttpClient httpclient = new DefaultHttpClient();
 HttpPost httppost = new HttpPost("http://192.168.1.121:4113/services");
 ... header and content filling in ...
 HttpResponse response = httpclient.execute(httppost);

运行.execute时,出现“ javax.net.ssl SSLException:不可信服务器证书”错误.我想简单地允许任何证书工作,无论它是否在android钥匙链中.

我花了大约40个小时研究并试图找出解决此问题的方法.我已经看到了许多有关如何执行此操作的示例,但到目前为止,在Android中都没有成功.他们似乎只适用于JAVA.有谁知道如何配置或覆盖Android中的Apache HttpClient使用的证书验证,以便它仅批准DefaultHttpClient连接的所有证书?

多谢您的善意回应

解决方法:

如果有人仍然想弄清楚这一点,我最终在这里提出了解决方案:

HTTPS GET (SSL) with Android and self-signed server certificate

向下滚动到SimonJ的解决方案.这是解决此问题的简单方法.

标签:self-signed,ssl,apache,httpclient,android
来源: https://codeday.me/bug/20191209/2096291.html