我可以調用API並檢索JSON數據。試圖從JSON數據中獲取值內的值
下面的代碼返回字典對象:
NSDictionary *dataDictionary = [NSJSONSerialization JSONObjectWithData:ResponseData options:kNilOptions error:&error];
NSDictionary *hits = dataDictionary[@"hits"];
NSLog(@"%@", hits);
「點擊」返回此數據:
{
"_id" = 521b95cf4a56d006d578c213;
"_index" = "f762ef22-e660-434f-9071-a10ea6691c27";
"_score" = "3.6973438";
"_type" = item;
fields = {
"brand_id" = 513fbc1283aa2dc80c000005;
"brand_name" = Subway;
"item_id" = 521b95cf4a56d006d578c213;
"item_name" = "6\" Subway Melt\U00ae";
"nf_serving_size_qty" = 1;
"nf_serving_size_unit" = serving;
};
我試圖獲得「ITEM_NAME」的價值,所以我嘗試它像這樣:
NSString *nameOfItem = hits[@"item_name"];
NSLog(@"%@", nameOfItem);
但是,我導致SIGABRT錯誤,並顯示以下消息:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFArray objectForKeyedSubscript:]: unrecognized selector sent to instance 0x7f97c0d85520'
我該如何去取回「item_name」值?
抱歉,但這看起來不是有效的JSON。無論如何,我看到「字段」下的「item_name」 –
錯誤消息告訴你,你有一個數組,但你顯示的命中是一個字典。這是從您的日誌完整打印輸出?嘗試記錄[點擊課程],看看有什麼。 – rdelmar
「點擊」沒有返回上面的數據。在上面的清單中省略了數據周圍的'()'字符。學習如何閱讀JSON! –