0

我需要将数组传递给 webservice。我已将产品标识符存储到 nsmutablearray 中。我想将此数组传递给我的 php 服务器。所以我有以下事情。

__block ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
request.requestMethod = @"POST";
[request setPostValue:product_identifiers forKey:@"product_identifiers"];

当我 NSLog 我的数组时,

 (
        "com.hoiuat.test.loves.oneweek",
        "com.hoiuat.test.loves.oneweek",
        "com.hoiuat.test.loves.oneweek",
        "com.hoiuat.test.loves.oneweek",
        "com.hoiuat.test.loves.oneweek",
        "com.hoiuat.4",
        "com.hoiuat.11",
        "com.hoiuat.3",
        "com.hoiuat.8",
        "com.hoiuat.6"
    )

Php 开发人员说他们无法将参数作为数组接收。

请让我知道,我应该如何传递数组。

4

1 回答 1

0

这取决于 Web 服务的要求,但您可以将其作为分隔符的字符串传递,如下所示:

NSString *postValue = [product_identifiers componentsJoinedByString:@"&"];
NSString *postString = [NSString stringWithFormat:@"product_identifiers=%@, postValue];

// this will generate the string:
// product_identifiers=com.hoiuat.test.loves.oneweek&com.hoiuat.test.loves.oneweek ...

然后像这样设置请求:

[request setHTTPBody:[postString dataUsingEncoding:NSUTF8StringEncoding]];
于 2012-09-17T05:14:00.903 回答