繁体   English   中英

如何发送多个数组请求?

[英]How do I send multiple array requests?

抱歉,如果我的问题不清楚,但是我需要知道以下操作。 我有这种方法可以像这样将数组发送到服务器。

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]"];
}

如您所见,我可以完美地发送数组的第一个值。但是,我需要通过addPostValue将类似array_id [0],array_id [1],array_id [3],array_id [4]的数组发送到服务器。数组数总是不同的。 因此,我需要执行以下操作。 基于数组计数,几乎不断添加请求方法和发布方法。

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

最好的方法是执行这样的任务,并记住数组数总是不同的,所以我需要一种方法来同时添加到getrequest方法和request addpost方法中?

如果我正确理解了您的问题,则可能只有一个getRequest方法可以接收包含x个数组的NSArray 就像是:

- (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]]];

更容易的是,您对数组进行JSON / XML处理,然后将其传递给请求构建器。

在构建请求和调用服务器时实现这种逻辑根本不是一个好方法。

更好的方法是制作一个数组的json,然后将其发布到服务器,然后服务器可以解码json并以其想要使用的任何形式使用它。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM