HTTPS 證書處理 objective c實現

2021-07-03 14:03:23 字數 1479 閱讀 5260

前一篇文章用c#處理了證書,這次就使用oc來試一下,其實基本原理累似,一般都是自己覆蓋幾個函式,然後自己處理證書相關的東西。

自己建立乙個類,如:

@inte***ce myurlconnection : nsobject- (void) sendpostrequest: (nsurl*)url postdata: (nsdata*)postdata;

@end

我比較喜歡把一些不需要對外公開的成員放在extension裡面,省的別人看見。

@inte***ce myurlconnection()

@end

然後實現sendpostrequest函式:

-(void) sendpostrequest:(nsurl *)url postdata:(nsdata *)postdata

實現nsurlconnection的幾個delegate函式:(上面的nsurlconnection操作是非同步的)

- (void)connection: (nsurlconnection*) connection didreceiveresponse:(nsurlresponse *)response

else

}_receiveddata = nil;

}- (void) connection:(nsurlconnection *)connection didreceivedata:(nsdata *)data

else

}- (void) connectiondidfinishloading:(nsurlconnection *)connection

else

}- (void)connection:(nsurlconnection *)connection didfailwitherror:(nserror *)error

- (void) connection:(nsurlconnection *)connection willsendrequestforauthenticationchallenge:(nsurlauthenticationchallenge *)challenge

}

前面幾個函式從字面意思就可以知道是對訪問的一些處理,比如成功失敗什麼的。關鍵是最後乙個函式。

這個函式裡面可以處理證書相關的東西,比如獲取證書資訊等,上面的例子是無論什麼證書,都通過。當然我們也可以根據具體的證書資訊做一些判斷,比如不是公司自己的證書,就取消操作什麼的。

呼叫:

myurlconnection* conn = [[myurlconnection alloc]init];

這樣,就算測試站點的證書是自己建立的測試證書,也可以成功訪問到資料了。

https證書安裝部署 https證書怎麼安裝

http和https是我們上網的時候經常見到的網路協議,當我們進入乙個 的時候,的網域名稱有時候是http開頭的,有時候又是https開頭的,可能你們會好奇,這兩者究竟有什麼區別呢?https證書又是什麼呢?安裝https的證書究竟有沒有什麼作用呢?安裝https證書的步驟如何,是簡單還是複雜呢?關...

https證書驗證

目前是在 godaddy 申請的 cn test.com 收到檔案後會列印乙份送行政部法務組,存入保險櫃。檔案構成 nginx 上配置 https 需要兩個引數 新證書驗證 2013年10月13日我們收到了新的 gd bundle.crt 和 test.com.crt 兩個檔案,理論上應該是匹配舊的...

跳過HTTPS證書

http是明文的 一旦有人給你攔截了就沒了 你訪問乙個https 伺服器給你返回乙個證書 一般情況下證書都不可信 因為很多都是公司自己做的 必須信任 爬蟲有時候會失敗 因為有證書 這時候你要忽略證書 from urllib.request import request,urlopen from fa...