0

我想将一个数组传递给我的服务器。我使用了 GET 方法,所以我必须在 url 之后传递一个参数。它看起来像这样:

http://www.myserver.com/?name=username&pwd=password

但现在我有一个数组。它包括一个 NSDictionary。如何将其附加到网址?

4

1 回答 1

0

这是我过去使用过的一个建议:

NSMutableString* get_string=[[NSMutableString alloc] init];

int i = 1;
NSEnumerator* arrayEnumerator = [myArray objectEnumerator];
NSDictionary* myDict;

while(myDict = [arrayEnumerator nextObject])
    {
    [get_string appendString:@"&e"];
    [get_string appendString:[NSString stringWithFormat:@"%d", myInt]];
    [get_string appendString:@"myFirstKey="];
    [get_string appendString:[myDict objectForKey:myFirstKey]];
    [get_string appendString:@"&e"];
    [get_string appendString:[NSString stringWithFormat:@"%d", myInt]];
    [get_string appendString:@"mySecondKey"];
    [get_string appendString:[myDict objectForKey:mySecondKey]];
    }

如果我做对了,输出应该是这样的:

&e1myFirstKey=5&e1mySecondKey=8&e2myFirstKey=4&e2mySecondKey=9

去掉第一个 &,打一个 URL 和一个“?” 在前面并将其发送到您的服务器。然后,您的服务器将不得不通过使用“isset”或类似的方法进行测试,以查看数字何时停止。

我假设您有任意数量的数组元素,但每个单独的字典都有已知字段 - 换句话说,您正在传递一个用户字典数组,但每个字典都有一个“用户”字段和一个“密码” “ 场地。如果不是这种情况,您仍然可以使用此方法,但您必须在通信双方多做一些工作。

于 2012-10-18T20:09:14.213 回答