Foursquare API を使用して、ユーザーの場所に近い場所を取得しています。1 か所のみの応答例はこちらです。
JSONkit を使用して応答を解析すると、パーサーは最初の部分を「忘れて」しまいます。私が取得するデータは、タグ「canonicalUrl」から始まります。しかし、応答の最初の部分も必要です。このコードを使用してデータを解析しています:
-(void)getDataWithLongitude:(float)longitude andLatitude:(float)latitude {
// Get current date
NSDate *date = [NSDate date];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"YYYYMMdd"];
NSString *dateString = [dateFormat stringFromDate:date];
NSString *theURL = [NSString stringWithFormat:@"https://api.foursquare.com/v2/venues/search?ll=40.7,-74&client_id=MY_ID&client_secret=MY_SECRET&v=%@&locale=de&limit=10&venuePhotos=1", dateString];
NSError *err = nil;
NSURLResponse *response = nil;
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
NSURL *url = [NSURL URLWithString:theURL];
[request setURL:url];
[request setCachePolicy:NSURLRequestReloadIgnoringCacheData];
[request setTimeoutInterval:30];
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&err];
NSDictionary *resultsDictionary = [data objectFromJSONData];
NSArray *array = [resultsDictionary valueForKeyPath:@"response.venues"];
NSLog(@"%@", array);
}
解析に NSJSONSerialization を使用しましたが、他の結果はありませんでした。
NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData: data options: NSJSONReadingMutableContainers error: &err];