android - 如何在 Android 应用程序中检查我的 API URL SSL 和非 SSL 支持?

标签 android http ssl https ssl-certificate

我有一个 Android 应用程序和一些来自 URL 的响应,该 URL 包含支持 NON-SSL 的 SSL,也支持 URLS。 现在我编写了支持 SSL 的代码并且工作得很好。我想检查两个条件 如果 SSLNON-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/

相关文章:

java - 如何在我的应用中添加 Material Design

rest - 已完成退款的 HTTP 响应代码

apache - ERR_CONNECTION_REFUSED 与 sll apache2.4

android - 在棉花糖中获取蓝牙本地mac地址

android - Android 是否支持 Expo 计步器?

android - shouldShowRequestPermissionRationale 方法的工作

java - 如何在 C# 和 Java 之间正确设置 ssl 套接字连接?

http - 是 http ://example/resource# and http://example/resource equivalent?

http - Angular2 HTTP 使用 observables 订阅显示数据未定义

ssl - 如何在docker中的应用程序上设置远程访问SSL JMX接口(interface)