天天看點

iOS開發網絡篇—網絡請求(HTTP協定)小結(轉)

1. 聊一下HTTP協定(協定的完整的通信過程)

2.通信過程

1> 請求

* 用戶端 --> 伺服器

* 請求的内容

a. 請求行(請求方法\HTTP協定\請求資源路徑)

b. 請求頭(描述用戶端的資訊)

c. 請求體(POST請求才需要有, 存放具體資料)

2> 響應

* 伺服器 --> 用戶端

* 響應的内容

a. 狀态行(響應行, 狀态碼)

b. 響應頭(伺服器資訊, 傳回資料的類型, 傳回資料的長度)

c. 實體内容(響應體, 傳回給用戶端的具體内容)

3.HTTP請求的方法

1> GET

* 參數都拼接在URL後面

* 參數有限制

2> POST

* 參數都在請求體

* 參數沒有限制

4.iOS中發送GET\POST請求的手段

1> NSURLConnection

* 發送一個同步請求

+ (NSData *)sendSynchronousRequest:(NSURLRequest *)request returningResponse:(NSURLResponse **)response error:(NSError **)error;

* 發送一個異步請求

+ (void)sendAsynchronousRequest:(NSURLRequest*) request

queue:(NSOperationQueue*) queue

completionHandler:(void (^)(NSURLResponse* response, NSData* data, NSError* connectionError)) handler;

* 代理的方法(異步)

[NSURLConnection connectionWithRequest:request delegate:self];

[[NSURLConnection alloc] initWithRequest:request delegate:self];

[[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:YES];

NSURLConnection *conn = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:NO];

[conn start];

如何聯系我:【萬裡虎】www.bravetiger.cn

【QQ】3396726884 (咨詢問題100元起,幫助解決問題500元起)

【部落格】http://www.cnblogs.com/kenshinobiy/

繼續閱讀