发送POST数组

时间:2010-08-26 09:28:04

标签: php iphone

我希望将一些数据作为数组从我的iphone应用程序发送到服务器

当我在发送帖子作为NSString

之前发布单个变量时
NSString *post =[[NSString alloc] initWithFormat:@"userName=%@&accountID=%@&",
                                                  username,accId];

NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding  allowLossyConversion:YES];

NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease]; 
[request setURL:url]; 
[request setHTTPMethod:@"POST"]; 
[request setValue:postLength forHTTPHeaderField:@"Content-Length"]; 
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; 
[request setHTTPBody:postData];

现在我希望发送这些用户名和accountIds的数组,如何在POST中发送NSArray,然后在我的服务器上的php中如何检索它?

由于

4 个答案:

答案 0 :(得分:1)

使用json,它比使用monstrous xml更容易,json在iphone上很容易使用touchjson库而且php本身也支持json

touchjson位于http://code.google.com/p/touchcode/wiki/TouchJSONHowTo

json也较小,因此在使用超过3g

时可以节省一些流量

答案 1 :(得分:0)

创建XML并将其作为POST数据发送...

答案 2 :(得分:0)

您可以考虑先从数据创建一个xml文件,然后将其发送到您的服务器。创建和解析XML很简单,请查看libxml2

答案 3 :(得分:0)

你可以序列化数组并将其作为字符串发送:)