我在Objective-C Mac應用程序中使用ASIHTTPRequest。我創建了一個訪問Web服務的公共API(通過ASIHTTPRequest)的類,我們稱之爲PublicAPI
。我所想要做的是編寫直接從Web服務,像這樣返回數據的方法......Objective-C和ASIHTTPRequest返回值
publicAPI = [[PublicAPI alloc] initWithAccountInfo:email:[self email] password:[self password]];
NSArray *theData = [publicAPI getData];
所以,getData
需要啓動ASIHTTPRequest 和返回來自服務器的響應。問題是我想通過ASIHTTPRequest的startAsynchronous
選項進行ASIHTTPRequest調用,該選項將服務器的響應委託給requestFinished
方法。
如何使用requestFinished
的結果作爲getData
方法的返回值?
感謝您的諮詢!
感謝您的意見,這是有道理的。那麼,那麼,習慣性的再次獲取數據的方法是什麼呢?也許'getData'只會啓動請求(並且不會返回任何內容),然後我會使用NSNotification來告訴其他類數據已返回?謝謝! – 2011-04-19 04:18:12
您可以使用具有成功/失敗回調的委託。如果您需要立即通知多個班級,您可以播發通知。最好的方法是成功/失敗。有一個食譜,在新iOS iOS食譜書(目前處於測試階段)中包含阻止回調的NSURLConnection:http://pragprog.com/titles/cdirec/ios-recipes – gerry3 2011-04-19 19:05:12
感謝您的提示。你提供的信息是令人興奮的,我需要的。這篇文章也有幫助:http://css.dzone.com/articles/do-not-publishcreating-your – 2011-04-20 02:38:40