我注意到Android提供了两个与默认主机名验证器非常相似的类。
HttpsURLConnection
使用的默认值为javax.net.ssl.DefaultHostnameVerifier.
还有另一个,org.apache.http.conn.ssl.BrowserCompatHostnameVerifier
,据说是相同的。
为什么提供这两个以及哪一个应该用于默认验证?
答案 0 :(得分:3)
一个区别是BrowserCompatHostnameVerifier可以验证IP地址形式的主机名(如浏览器),因为DefaultHostnameVerifier将始终尝试通过DNS查找IP地址。
http://lexaux.blogspot.com/2013/01/android-httpsurlconnection-self-signed.html