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