簡體   English   中英

NSURLConnection並處理響應代碼和響應數據

[英]NSURLConnection and handling response code and response data

我現在有一個奇怪的情況,那就是來自NSURLConnection委托方法的響應代碼:

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response;

在后續委托方法之前觸發:

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data;

我的代碼肯定可以使用改進,因為它現在從上面檢查HTTP響應代碼,然后調用某種方法來采取措施。 不幸的是,當時還沒有可用的數據。

有什么精美的解決方案可以使responseresponseData耦合,以至於我的類方法直到response responseData為200 +不為nil時才被觸發。 我是否需要將它們都設置為類實例變量? 似乎是一個窮人的解決方案。

數據之前的響應是正確的順序。 實際上,您應該使用此方法清除所有數據(以防您通過重定向收到多個響應並且所有中間數據都已過時)。

您收到一條connection:didReceiveResponse:消息,告訴您已收到回復標頭,但這發生任何正文內容之前

如果您需要訪問答復的所有元素,則應簡單地存儲響應和傳入的數據,僅在connectionDidFinishLoading:中處理它們(或者,如果數據很長,則可以在connection:didReceiveData:中進行增量處理)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM