我在我的程序中使用JSONKit解析谷歌地方api但我的应用程序崩溃时出现以下错误 - [NSURL _CFURLRequest]:无法识别的选择器发送到实例
NSString* URL = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/place/search/json?location=28.632808,77.218276&radius=500&types=atm&sensor=false&key=AIzaSyDHft2g5IDshIpXS17uOtZzkqGGgj-p1RQ"];
NSError* error = nil;
NSURLResponse* response = nil;
NSURLRequest *URLReq = [NSURL URLWithString:URL];
//[request setURL:URL];
//[request setCachePolicy:NSURLRequestReloadIgnoringLocalCacheData];
//[request setTimeoutInterval:30];
NSData* data = [NSURLConnection sendSynchronousRequest:URLReq returningResponse:&response error:&error];
if (error)
{
NSLog(@"Error performing request %@", URL);
NSLog(@"%@", [error localizedDescription]);
return;
}
NSDictionary *json = [data objectFromJSONData];
NSArray *places = [json objectForKey:@"results"];
NSLog(@"Google Data: %@", places);
答案 0 :(得分:6)
您错误地设置了“NSURLRequest
”,而应使用requestWithURL:
代替。
而不是
NSURLRequest *URLReq = [NSURL URLWithString:URL];
DO
NSURLRequest * urlReq = [NSURLRequest requestWithURL: [NSURL URLWithString: URL]];
另外,快速FYI:Objective C约定是对变量和ivars使用小写字母。使用大写字母表示您的班级名称。换句话说,将“URLReq
”更改为“urlReq
”并将“URL
”更改为“url
”(或甚至更好,更像“{{{{ 1}}“)。