![](/img/trans.png)
[英]iOS/Objective-C - How do I send multiple NSURLSessionDataTask requests without losing initial session?
[英]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.