1:nsurlconnection怎麼把http改為https?
一直使用nsurlconnection請求http介面,現在為了安全性的考慮打算使用https。
那麼怎麼修改呢?
1.不需要證書驗證 ps:我們使用的就是這種
1.1 直接修改http為https;
1.2 確認有 "security.framework"
1.3 修改完成,可以直接請求了。
2.需要證書驗證
其他的和1是一樣的,只不過需要加下面方法.?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
- (
void
)connection:(nsurlconnection *)connection willsendrequestforauthenticationchallenge:(nsurlauthenticationchallenge *)challenge
;
certs = cfarraycreate(null, array,
1
, &kcftypearraycallbacks);
cfrelease(rootcert);
// for completeness, really does not matter
}
sectrustref trust = [[challenge protectionspace] servertrust];
int
err;
sectrustresulttype trustresult =
0
;
err = sectrustsetanchorcertificates(trust, certs);
if
(err == noerr)
cfrelease(trust);
bool trusted = (err == noerr) && ((trustresult == ksectrustresultproceed)||(trustresult == ksectrustresultconfirm) || (trustresult == ksectrustresultunspecified));
if
(trusted)
else
}
2:
https跨域請求http資料
a站 b站 直接用ajax跨域請求返回資料因為不是https協議 b站沒有https證書 返回的資料或資源所以會被a站攔截阻擋,自己想到解決辦法 寫乙個api做中轉資料,在a站內些乙個介面,a站利用ajax去請求介面,再有介面模擬請求b站獲取資料到api介面,然後再返回到a站ajax 直接上 a站a...
HTTP協議 HTTPS協議
http協議是基於tcp協議的,當然是要先建立tcp連線了。目前使用的http協議大部分都是1.1.在1.1的協議裡面,預設是開啟了keep alive的,這樣建立的tcp連線,就可以在多次請求中復用。http的報文大概分成三大部分。第一部分是請求行,第二部分是請求的首部,第三部分才是請求的正文實體...
http與https區別及https原理
http是明文傳輸,容易被劫持不安全 https是加密後傳輸的相對較安全 客戶端向服務端傳送自身已經存在的加密演算法列表和隨機數a 服務端接收到了客戶端的加密演算法,然後綜合比較選出比較合適的加密演算法 公鑰 數字證書和隨機數b 客戶端拿到服務端的數字證書驗證有效性後生成乙個隨機字串pre mast...