データを取得するためにRESTベースのWebサービスを使用しています。JSONドキュメントの構造に関係なく、NSDictionaryは同じ方法で入力されます。Webサービスが返されるときにソートを保持したい。
これが私のコードです:
-(void) getData
{
NSURL *url = [NSURL URLWithString:@"http://somewebservice"];
__block ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setCompletionBlock:^{
// Use when fetching text data
NSString *responseString = [request responseString];
NSDictionary *resultsDictionary = [responseString objectFromJSONString];
[jokesArray release];
jokesArray = [resultsDictionary allValues]; //always has the same order.
[jokesArray retain];
[self.tableView reloadData];
// Use when fetching binary data
// NSData *responseData = [request responseData];
}];
[request setFailedBlock:^{
NSError *error = [request error];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"An error occured"
message:[error description]
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
[alert release];
}];
[request startAsynchronous];
}