2014-02-27 64 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并以任何形式使用它想要使用它。

这将是一个更简单和结构化的方法。