###1.基本概念
遠端伺服器
別名:外網伺服器、正式伺服器
使用階段:應用上線後使用的伺服器
使用人群:供全體使用者使用
速度:取決於伺服器的效能、使用者的網速
本地伺服器
別名:內網伺服器、測試伺服器
使用階段:應用處於開發、測試階段使用的伺服器
使用人群:僅供公司內部的開發人員、測試人員使用
速度:由於是區域網,所以速度飛快,有助於提高開發測試效率
協議:不同的協議,代表著不同的資源查詢方式、資源傳輸方式。
路徑:資源在主機(伺服器)中的具體位置。
超文字傳輸協議,訪問的是遠端的網路資源
格式是http://
http協議是在網路開發中最常用的協議
file
訪問的是本地計算機上的資源
格式是file://(不用加主機位址)
mailto
訪問的是電子郵件位址
格式是mailto:
ftp訪問的是共享主機的檔案資源
格式是ftp://
###3.http協議
規定客戶端和伺服器之間的資料傳輸格式
讓客戶端和伺服器能有效地進行資料溝通
思考客戶端該傳什麼格式的資料給伺服器?伺服器才能看懂
伺服器該返回什麼格式的資料給客戶端?客戶端才能看懂
兩邊要怎樣傳輸資料才能有效溝通?
簡單快速
因為http協議簡單,所以http伺服器的程式規模小,因而通訊速度很快
靈活http允許傳輸各種各樣的資料
http 0.9和1.0使用非持續連線
限制每次連線只處理乙個請求,伺服器對客戶端的請求做出響應後,馬上斷開連線,這種方式可以節省傳輸時間
請求:客戶端向伺服器索要資料
響應:伺服器返回客戶端相應的資料
如果要傳遞大量資料,比如檔案上傳,只能用post
請求;
get
的安全性比post
要差些,如果包含機密\敏感資訊,建議用post
;
如果僅僅是索取資料(資料查詢),建議使用get
;
如果是增加、修改、刪除資料,建議使用post
。
###5.ios中傳送http請求的方案
在ios中,常見的傳送http請求的方案有:
請求頭:
包含了對客戶端的環境描述、客戶端請求資訊等
get /minion.png http/1.1
包含了請求方法、請求資源路徑、http協議版本
host: 120.25.226.186:32812
客戶端想訪問的伺服器主機位址
user-agent: mozilla/5.0
客戶端的型別,客戶端的軟體環境
accept: text/html, */*
客戶端所能接收的資料型別
accept-language: zh-cn
客戶端的語言環境
accept-encoding: gzip
客戶端支援的資料壓縮格式
請求體
:客戶端發給伺服器的具體資料,比如檔案資料(post請求才會有)
響應頭:
包含了對伺服器的描述、對返回資料的描述
http/1.1 200 ok
包含了http協議版本、狀態碼、狀態英文名稱
server: apache-coyote/1.1
伺服器的型別
content-type: image/jpeg
返回資料的型別
content-length: 56811
返回資料的長度
date: mon, 23 jun 2014 12:54:52 gmt
響應的時間
響應體:
伺服器返回給客戶端的具體資料,比如檔案資料
iOS 網路請求
pragma mark 網路請求 方式 非同步 ibaction delegatebuttondidclicked uibutton sender 方法 客戶端收到伺服器的響應 pragma mark 客戶端收到伺服器的響應 void connection nsurlconnection conne...
iOS的網路請求
首先建立乙個 uiviewcontroller,然後在.m檔案中寫入 簽訂協議 inte ce mainviewcontroller 可變的資料屬性,用來拼接每一小塊資料 property nonatomic,retain nsmutabledata data property nonatomic,...
IOS 網路非同步請求
非同步請求使用與同步和佇列式非同步請求相同的物件,只不過又增加了另乙個物件,即nsurlconnectiondelegate 上 import viewcontroller.h nsinteger totaldownloaded 0 inte ce viewcontroller end implem...