2014-02-27 65 views
1

對不起,如果我的問題似乎模糊,但我需要知道如何做到以下幾點。我有這樣的方法發送數組到服務器像這樣。如何發送多個數組請求?

ViewController.m

[requestHandler getRequest:array_id[0]]; 

RequestHandler.m

-(void)getRequest:(NSMutableArray)array { 
    __weak ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 
    [request addPostValue:array forKey:@"array_id[0]"]; 
} 

正如你可以看到我可以給數組perfectly.However的第一個值,我需要發送像這樣array_id陣列[0],array_id [1],array_id [3],array_id [4]通過addPostValue發送到服務器。陣列數總是不同的。所以我需要做如下的事情。幾乎不斷增加基於數組計數的請求方法和post方法。

-(void)getRequest:(NSMutableArray)array array1:(NSMutableArray *)array1 { 
    [request addPostValue:array forKey:@"array_id[0]"]; 
    [request addPostValue:array1 forKey:@"array_id[1]"]; 
} 

什麼是執行這樣的任務,記住,數組數始終是不同的最好辦法,所以我需要一種方法來繼續增加雙方的GetRequest方法和請求addpost方法?

回答

1

如果我正確理解你的問題,你可以只有一個getRequest方法,收到NSArray包含x數組數量。喜歡的東西:

- (void)getRequest:(NSArray*)array { 
    for (uint i = 0; i<array.count; i++) { 
     NSArray *arr = array[i]; 
     [request addPostValue:arr forKey:[NSString stringWithFormat:@"array_id[%i]", i]]; 
    } 
} 

然後,調用像這樣:

[requestHandler getRequest:@[array_id[0], array_id[1]]]; 
0

什麼會更容易的是,你讓你的陣列的JSON/XML,然後傳遞到您的要求建設者。

在構建請求和調用服務器時,實現這種邏輯並不是一個好方法。

更好的方法是製作一個數組的json,然後將其發佈到服務器,服務器然後可以解碼json並以任何形式使用它想要使用它。

這將是一個更簡單和結構化的方法。