簡體   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