項目需求,把http轉成https,在網上看看了,學了兩種方法,第一種比較簡單,是繞過證書,來達到訪問https,另一種是認證自定義的證,整理一下網上那個的只是,全部內容都是看大神們的解答,作為一個搬運工整理一下,會標明所有原文的出處。
源碼文章里都有,就不在貼了。
學習自這位前輩
http://blog.csdn.net/rongyongfeikai2/article/details/41659353
第二種方法,比較麻煩先要自己生成bks文件放在項目里
推薦兩個比較好的文章,看完就可以學會怎么生成bks文件
點擊打開鏈接 點擊打開鏈接
第一個 http://blog.csdn.net/u013424496/article/details/51161647
點擊打開鏈接 點擊打開鏈接
第二個 http://blog.csdn.net/u010314594/article/details/50765534
然后說下遇到的問題
項目有一個域名還有一個ip地址
當我用域名的時候出現這個問題
hostname in certificate didn't match
添加了如下代碼
// 這個參數可以根據需要調整,如果對主機名的驗證不需要那么嚴謹,可以將這個嚴謹程度調低些,已經調整為ALLOW_ALL_HOSTNAME_VERIFIERSSLSocketFactory sf = new SSLSocketFactory(trusted);sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
其實源碼里都有,但是結合了很多為前輩的知識,就把這個忽略了,重點提一下。
新聞熱點
疑難解答