2013-03-04 151 views
0

我有一個iOS應用程序使用RestKit 0.20-rc1進行RESTful服務。我試圖執行一個GET,我提供了多個具有相同名稱的查詢參數來檢索一組相同類型的對象。例如,我的網址如下所示:RestKit 0.20 - 具有相同名稱的多個查詢參數?

http://mysite.com/rest/myobjects?objID=123&objID=234&objID=345 

我的web服務能夠接受這樣的查詢並返回適當的對象。在客戶端上我RestKit代碼看起來是這樣的:

NSDictionary *params = ... 
RKObjectManager *objMgr = [RKObjectManager sharedManager]; 
[objMgr getObjectsAtPath:@"/rest/myobjects" parameters:params success:nil failure:nil]; 

我的問題是,必須將參數指定爲NSDictionary,和我有相同名稱的多個參數。我嘗試將NSDictionary中的值設置爲包含所有參數值的NSArray,但這不起作用。

如何使用此方法在RestKit中指定具有相同名稱的多個查詢參數?這只是在RestKit不支持?

回答

0

您可以將查詢與參數放在getObjectAtPath中。這意味着創建一個這樣的參數字符串:

NSString *queryPath = @"getNames?names=bob&names=joe&names=joey";

,然後做到這一點(注意,parameters對象這裏是nil):

[[RKObjectManager sharedManager] getObjectsAtPath:queryPath 
              parameters:nil 
               success:nil failure:nil]; 

如果你有編碼的問題只是這樣做: queryPath = [queryPath stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

相關問題