将JSON作为URL objective-c中的参数传递

时间:2015-12-23 23:51:08

标签: ios json web-services rest nsurlconnection

我有以下网络服务网址:

NSString *url = @"https://api.parse.com/1/classes/Cinema?keys=name,rows,column&where={\"location\":{\"__type\":\"Pointer\",\"className\":\"Location\",\"objectId\":\"gSEpGR28iT\"}}";

此处where的参数本身是JSON格式

问题是,当我使用以下代码使用此Web服务时,它会出错:

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:url]];
request.HTTPMethod = @"GET";
[request addValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[request addValue:PARSE_APPLICATION_ID_VALUE forHTTPHeaderField:PARSE_APPLICATION_ID_KEY];
[request addValue:PARSE_REST_ID_VALUE forHTTPHeaderField:PARSE_REST_ID_KEY];
[NSURLConnection sendAsynchronousRequest:command.request
                                   queue:self.operationQueue
                       completionHandler:^(NSURLResponse *response,
                                           NSData *data,
                                           NSError *error)
 {
   ...
 }]
  

错误:错误域= NSURLErrorDomain代码= -1002"不支持的URL"   UserInfo = {NSUnderlyingError = 0x7c989590 {错误   Domain = kCFErrorDomainCFNetwork Code = -1002"不支持的URL"   UserInfo = {NSLocalizedDescription =不支持的网址}},   NSLocalizedDescription =不支持的网址}

如果我在没有where参数的情况下使用相同的网络服务,即只有https://api.parse.com/1/classes/Cinema?keys=name,rows,column代码正常工作。我不知道为什么json格式的参数会导致问题。任何帮助将受到高度赞赏。感谢。

0 个答案:

没有答案