我有一个 Android 应用程序和一些来自 URL 的响应,该 URL 包含支持 NON-SSL
的 SSL,也支持 URLS
。
现在我编写了支持 SSL 的代码并且工作得很好。我想检查两个条件
如果 SSL
和 NON-SSL
站点也支持。
我在这里尝试了什么,
String url = AdRequestParam.getURL();
HostnameVerifier hostnameVerifier = org.apache.http.conn.ssl.SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER;
DefaultHttpClient client = new DefaultHttpClient();
//SSL
SchemeRegistry registry = new SchemeRegistry();
SSLSocketFactory socketFactory = SSLSocketFactory.getSocketFactory();
socketFactory.setHostnameVerifier((X509HostnameVerifier) hostnameVerifier);
registry.register(new Scheme("https", socketFactory, 443));
SingleClientConnManager mgr = new SingleClientConnManager(client.getParams(), registry);
DefaultHttpClient httpClient = new DefaultHttpClient(mgr, client.getParams());
// Set verifier
HttpsURLConnection.setDefaultHostnameVerifier(hostnameVerifier);
最佳答案
我可以使用 url.startsWith("http://")
来解决这个问题,编写条件并根据请求的 URL 执行。
关于android - 如何在 Android 应用程序中检查我的 API URL SSL 和非 SSL 支持?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48219674/