2015-02-07 103 views
-1

我正在swift開發一個ios應用程序,並且有近20多個網絡電話。每個網絡調用都有一組參數,並且一些參數在服務調用中是通用的。有沒有一種方法可以編寫一個幫助程序類,我可以傳遞一個參數(以識別webserivce調用),並且此函數形成請求併發送它。我正在尋找類似於結構,arrray或其他東西中的所有參數的東西,並根據請求類型重新使用(動態形成請求對象)。從ios撥打多個網絡服務

+2

最好的方法來創建Parameter類,你有所有的領域作爲適當的ty來設置。更多你可以有差異。返回格式化請求數據直接通過服務的方法。 – 2015-02-07 05:55:18

回答

1

呀,這是很常見的技術來創建服務調用一個單獨的類和每個呼叫都有自己的方法的例子,

  1. 創建service.h從NSObject的.M inherted。
  2. 定義方法如-(NSArray*)getItemsWithCategory:(NSString*)cat,該方法負責從服務器獲取數據類別作爲參數。
  3. 該方法應該是可見的(必須在.h中定義),以便可以從任何其他 uiviewcontroller或class中調用該方法。
  4. 在實現中使用任何技術來獲取DataFromURL,如AFNetworkingASIHTTP或您的自定義方法。
  5. 定義和創建delegates成功和失敗或者你可以使用塊,但委託更清潔的方式。
  6. 將代表設置給您的班級,並在該班級中實施,例如getItemWithCategory:SuccessFail
  7. 在您的視圖中填充數據。
0

您可以使用在後臺運行不同的線程,可以創建一個webservicehelper類來處理他們所有例如

[NSThread detachNewThreadSelector:@selector(webservice1Call) toTarget:self withObject:nil]; 
[NSThread detachNewThreadSelector:@selector(webservice2Call) toTarget:self withObject:nil]; 
[NSThread detachNewThreadSelector:@selector(webservice3Call) toTarget:self withObject:nil]; 

在任何函數調用不同的方法

-(void)webservice2Call{ 
//WebServiceHelper can be the handler class 
[WebServiceHelper loadWebService1Data]; 

} 

而且在loadWebService1Data類功能..發送請求的呼叫