http和https
http協議, hyper transfer protocol (超文字傳輸協議) 是用於全球資訊網(www)伺服器傳送超文字到本地瀏覽器的傳輸協議,http是乙個應用層協議,由請求和響應構成,是乙個標準的客戶端伺服器模型.
工作原理: http協議採用請求/響應模型. 客戶端向伺服器傳送乙個請求報文,伺服器以乙個狀態作為響應.
https: 安全超文字傳輸協議 它是乙個安全通訊通道,它基於http開發,用於在客戶計算機和伺服器之間交換資訊.它使用安全套接字層(ssl)進行資訊交換,簡單來說它是http的安全版. https協議使用ssl在傳送方和接受方通過交換共知的秘鈅來實現.因此,傳送的資料不容易被網路黑客擷取和解密.
ssl是netscape公司所提出的安全保密協議,在瀏覽器和web伺服器之間構造安全通道來進行資料傳輸,ssl執行tcp/ip 層值上,應用層之下,為應用程式提供加密資料通道.
https協議需要到ca申請證書,一般免費證書很少,需要交費
http是超文字傳輸協議,資訊是明文傳輸,https則是具有安全性的加密傳輸協議
http和https是用的是完全不同的鏈結方式,用的埠也不一樣,前者是後者是443
http的鏈結很簡單,是無狀態的
https是協議是由ssl + http 協議構建的可進行加密傳輸,身份認證的網路協議 要比http安全
請求方式: get 和 post ;
連線方式:
同步連線:程式容易出現卡死現象
非同步連線有兩種實現方式:
設定**,接收資料
實現block
下新增nsallowsarbitraryloads
型別boolean ,
值設為 yes
同步get :
建立乙個位址字串,注意: 不要有空格
建立乙個統一資源定位符(url)
建立乙個nsurlrequest,並配置快取策略和超時時間
通過乙個nsdata物件獲取網路請求的資料
同步post:
建立乙個位址字串,注意: 不要有空格
建立乙個統一資源定位符
使用nsmutableurlrequest. 因為之後要對request做更改
建立乙個上傳資料的字串,並且轉成nsdata物件
設定請求方式 (sethttpmethod)
設定上傳的data(sethttpbody)
通過乙個nsdata物件獲取網路請求的資料
post和get的區別:
post設定請求方式
get設定body
同步get和post的缺點: 會造成程式的卡頓,所以在開發中不推薦使用
//get
同步
- (ibaction
)gett:(
id)sender
//post同
步
- (ibaction
)postt:(
id)sender
非同步 #import
"viewcontroller.h"
@inte***ce
viewcontroller
()<
nsurlconnectiondatadelegate
>
//遵循**
@property
(nonatomic
,strong
)nsmutabledata
*resultdata;
@end
//get
非同步- (
ibaction
)gety:(
id)sender
}];#pragma mark -----**
//**的非同步網路請求
(get)
//引數1: nsurlrequest
//引數2:
** [
nsurlconnection
connectionwithrequest
:request
delegate
:self];}
//post
非同步- (ibaction
)posty:(
id)sender ];
#pragma mark ----
**
[nsurlconnection
connectionwithrequest
:request
delegate
:self];}
#pragma mark -----nsurlconnectiondatadelegate協議方法
//開始響應
- (void
)connection:(
nsurlconnection
*)connection didreceiveresponse:(
nsurlresponse
*)response
//接收到資料
//這個方法會重複的執行
,所以可能拿到一段一段的資料
.這就是需要我們把這些資料拼接起來
- (void
)connection:(
nsurlconnection
*)connection didreceivedata:(
nsdata
*)data
//結束響應
- (void
)connectiondidfinishloading:(
nsurlconnection
*)connection
@end
policy
n. 政策,方針;保險單
interval
n. 間隔;間距;
synchronous
adj. 同步的;同時的
fragments
n. 碎片(fragment的複數);片斷;[計] 分段
method
n. 方法;條理
asynchronous
adj. [電] 非同步的;不同時的
operation
n. 操作;經營;[外科] 手術;[數][計] 運算
queue
n. 佇列;長隊;辮子
swift 同步 網路請求 swift網路請求
swift同樣可以實現oc中afnetworking mjextension的效果,實現方法是alamofire swiftyjson handyjson alamofire 網路請求 swiftyjson 資料解析 handyjson 對映為model 一 獲取sessionmanager子類的單...
iOS NSURLSession 網路請求
在ios9以前網路請求用的是 nsurlconnectio n connectionwithrequest requrest d elegate self 在ios9中官方文件 connectionwithrequest方法中後面給出了下面這樣乙個提示 感興趣的可以去 nsurlsession.h ...
Swift網路請求
這裡以json資料格式為例介紹 常見資料格式json xml等 下面例子使用nsurlconnection實現了乙個簡單的非同步get操作 func requesturl urlstring string else 這個庫通過封裝nsurlconnection和nsoperationqueue實現了...