我想将数组传递给我的服务器。我使用了GET方法,所以我必须在url之后传递一个参数。它看起来像这样:
http://www.myserver.com/?name=username&pwd=password
但现在我有一个数组。它包括一个NSDictionary。如何将其附加到网址?
答案 0 :(得分: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”或类似测试来分开,以查看数字何时停止。
我假设您有任意数量的数组元素,但每个单独的字典都有已知的字段 - 换句话说,您传递的是一组用户词典,但每个字典都有一个“用户”字段,一个“密码”字段。如果不是这种情况,你仍然可以使用这种方法,但你必须在通信的两个方面做更多的工作。