在字符串查询中传递数组作为参数


Passing an array as argument in string query

我需要传递一个搜索查询,我有一个字符串id数组,我想检查这些id是否存在于服务器上。我最好奇的是我的服务器的性能,所以我希望它使用最少的资源

下面是我使用的代码
myContactIds = NSMutableArray which contains lets say 1000 strings of ids
NSString *queryString = myUrl?=array=NEED_TO_SEND_ARRAY_HERE ;

 [Utilities responseFromURL:[NSURL URLWithString:queryString] completionBlock:^(NSString *response, NSError *errorString)
     {
         [self.myTable reloadData];
         [self.indicator stopAnimating];
     }];

首先,我如何通过一个数组与我的url,使它可以在我的PHP服务器端代码读取其次,我如何使用该数组在服务器端查询,如果数据库包含id,并返回作为响应,存在于数据库

中的id

p。如果我不使用任何外部库就能得到答案,那就更好了,因为我想学习。

要在url中传递字符串吗?例如:
www.myUrl.com ?数组= string1 % 7 cstring2 % 7 cstring3

如果是,你可以使用componentsJoinedByString:

NSArray *myArray = @[@"string1", @"string2", @"string3"];
NSString *stringFromArray = [myArray componentsJoinedByString:@"%7C"];

然后你可以在你的url中使用那个字符串。当然,你还需要在web服务器上解析url的子字符串。

然而,在web请求的HTTP正文中嵌入这个数组可能会容易得多。您可以从字符串数组创建一个JSON blob。然后将JSON填充到请求的HTTP主体中。

您使用的解决方案显然是针对您的确切需求的。