【发布时间】:2015-03-10 22:03:00
【问题描述】:
我有一本儿子值的字典,但我似乎无法检索多个值。我是新手,我确信我只是忽略了某些东西或完全错误。
这是我在控制台收到的 json 数据:
`2015-03-10 16:41:46.693 Json[8118:629760] https://outpan-images.s3.amazonaws.com/igq8ev0-9780785265740.jpg
2015-03-10 16:41:46.694 Json[8118:629760] {
attributes = {
"Author(s)" = "John Eldredge";
Format = Paperback;
"ISBN-10" = 0785265740;
"Page Count" = 288;
"Publication Date" = "April 2002";
Publisher = "Nelson, Thomas, Inc.";
};
barcode = 9780785265740;
images = (
"https://outpan-images.s3.amazonaws.com/igq8ev0-9780785265740.jpg"
);
name = "Wild at Heart Field Manual: A Personal Guide to Discover the Secret of Your Masculine Soul";
"outpan_url" = "http://www.outpan.com/view_product.php?barcode=9780785265740";
videos = (
);
}
这是我尝试检索数据的代码 - 如果我只要求一件事,我可以获得响应 - 但是,当我尝试获取多个值时,它 sigbrt 我正在尝试获取图片网址、名称和条形码。
#import "ViewController.h"
#import "AFNetworking.h"
static NSString * const BaseURLString = @"http://www.outpan.com/api/get-product.php?barcode=9780785265740&apikey=bbb053368784fed4f89d37f5fbabcf4";
...
- (IBAction)showJson:(id)sender {
// 1
NSString *string = BaseURLString;
NSURL *url = [NSURL URLWithString:string];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
// 2
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
operation.responseSerializer = [AFJSONResponseSerializer serializer];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
// 3
NSDictionary *dic = (NSDictionary *)responseObject;
NSArray *imagesUrl = [dic objectForKey:@"images"];
NSString *imagesUrlString = [imagesUrl objectAtIndex:0];
NSLog(@"%@", imagesUrlString);
NSLog(@"%@", responseObject);
//this crashes -
// NSArray *bookName = [dic objectForKey:@"name"];
// NSString *bookNameString = [bookName objectAtIndex:0];
// NSLog(@"%@", bookNameString);
// NSLog(@"%@", responseObject);
}
failure:^(AFHTTPRequestOperation *operation, NSError *error) {
// 4
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Error Retrieving Weather"
message: [error localizedDescription]
delegate:nil
cancelButtonTitle:@"Ok"
otherButtonTitles:nil];
[alertView show];
}];
// 5
[operation start];
}
@end
【问题讨论】:
-
那么,异常消息和异常堆栈跟踪在哪里??
标签: ios json afnetworking