Skip to content

Instantly share code, notes, and snippets.

@mrsidique
Created August 15, 2012 17:09
Show Gist options
  • Select an option

  • Save mrsidique/3361665 to your computer and use it in GitHub Desktop.

Select an option

Save mrsidique/3361665 to your computer and use it in GitHub Desktop.
NSURLConnection Call
if (_prevQuery != _currentPage + 1 && _currentPage + 1 <= _numberOfPages) {
NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
NSString* api_key = [[defaults objectForKey:@"user"]valueForKey:@"api_key"];
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@&per_page=15&page=%d", [[NSUserDefaults standardUserDefaults]objectForKey:@"baseUrl"],currentEndpoint, _currentPage + 1]];
NSLog(@"%@", url);
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadRevalidatingCacheData timeoutInterval:30];
[request setHTTPMethod:@"GET"];
if (api_key) {
[request setValue:api_key forHTTPHeaderField:@"authorization"];
}
_prevQuery = _currentPage + 1;
[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue currentQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError* error) {
if (!error) {
int statusCode = [(NSHTTPURLResponse *)response statusCode];
if (statusCode == 200 || statusCode == 201) {
_currentPage = [[[(NSHTTPURLResponse *)response allHeaderFields]valueForKey:@"Current_page"]intValue];
_numberOfPages = [[[(NSHTTPURLResponse *)response allHeaderFields]valueForKey:@"Num_pages"]intValue];
NSLog(@"%d", _currentPage);
id jsonObject = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil];
if (allPublicTags) {
self.allPublicTags = [self.allPublicTags mutableCopy];
[self.allPublicTags addObjectsFromArray:jsonObject];
}
else {
[self setAllPublicTags:jsonObject];
}
[self.tableView reloadData];
[self.productGridView reloadData];
}
}
}];
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment