2011-04-19 2 views
0

를 사용하여 아이폰에서 구문 분석뉴스 .. 페이스 북의 프로필의 뉴스 피드의 데이터를 가져 오는 중 ... 응답 내가 페이스 북 그래프 API를 사용하고 페이스 북 그래프 API 광고

피드 여기에 내가에서 얻고있는 반응이다 콘솔

{ 
    application =   { 
     id = 2309869772; 
     name = Links; 
    }; 
    "created_time" = "2011-02-10T09:44:27+0000"; 
    from =   { 
     id = 1845195019; 
     name = "Paritosh Raval"; 
    }; 
    icon = "http://static.ak.fbcdn.net/rsrc.php/v1/yD/r/aS8ecmYRys0.gif"; 
    id = "1845195019_192144087475935"; 
    likes =   { 
     count = 1; 
     data =    (
          { 
       id = 1845195019; 
       name = "Paritosh Raval"; 
      } 
     ); 
    }; 
    link = "http://www.facebook.com/AMDAVAD"; 
    name = "once you live in AHMEDABAD u cannot live anywhere else in the world.."; 
    picture = "http://profile.ak.fbcdn.net/hprofile-ak-snc4/203562_115963658443669_4129246_n.jpg"; 
    properties =   (
        { 
      name = Page; 
      text = "21,803 people like this."; 
     } 
    ); 
    type = link; 
    "updated_time" = "2011-02-10T09:44:27+0000"; 
}, 
    { 
    application =   { 
     id = 2392950137; 
     name = Video; 
    }; 
    "created_time" = "2011-02-02T04:18:22+0000"; 
    description = "must watch and explore :))"; 
    from =   { 
     id = 1845195019; 
     name = "Paritosh Raval"; 
    }; 
    icon = "http://static.ak.fbcdn.net/rsrc.php/v1/yD/r/aS8ecmYRys0.gif"; 
    id = "1845195019_194836027209359"; 
    likes =   { 
     count = 1; 
     data =    (
          { 
       id = 100000701228096; 
       name = "Bhargav Jani"; 
      } 
     ); 
    }; 
    link = "http://www.facebook.com/video/video.php?v=152586058110610&comments"; 
    name = "It Happens Only in...."; 
    "object_id" = 152586058110610; 
    picture = "http://vthumb.ak.fbcdn.net/hvthumb-ak-snc4/50893_152586468110569_152586058110610_18299_1832_t.jpg"; 
    properties =   (
        { 
      name = Length; 
      text = "0:54"; 
     } 
    ); 
    source = "http://video.ak.fbcdn.net/cfs-ak-ash2/70137/56/152586058110610_53804.mp4?oh=481e53b824f6db8e3195fc9c0d07571d&oe=4DAFC300&__gda__=1303364352_7670272db65e93ec75dcaaed16b6d805"; 
    type = video; 
    "updated_time" = "2011-02-02T04:18:22+0000"; 
} 

그리고 콘솔에 정리 된 구조의 모든 데이터를 표시하려고합니다. 아무도 이것으로 나를 도울 수 있습니까?

답변

1

정확하게 묻는 것이 분명하지 않지만 대답하려고합니다.

당신이 방법 에서이 응답을 구문 분석하는 데 필요한 모든의

첫째 - (무효) 요청 : 문자열하는있는 NSArray 당신의 경우가 될 수 있습니다 Facebook iOS SDK

결과 (ID) 결과 : (FBRequest *) 요청 didLoad을 다중 결과 및 NSDictionary를 가짐

콘솔 출력에는 포함 된 배열과 사전이 포함 된 NSDictionary가 있습니다. 나는 그것에 대해 약간의 튜토리얼을 가지고 있지만 그것은 단지 러시아어 그리고 사이트가 다운 오늘날 :(그래서 난 그냥 내 기사에서 한 예를 복사합니다.

하자 우리가 좋아하는 페이스 북 사용자가 알고 싶은 말

- (IBAction)getUserInfo:(id)sender { 
    [_facebook requestWithGraphPath:@"me/likes" andDelegate:self]; 
} 

브라우저에서이 Graph API 응답을 시도하거나 콘솔로 출력하면이 요청이 무엇을 반환하는지 확인할 수 있습니다. 하나의 유일한 키를 가진 사전을 반환합니다 - "data"및 배열을이 키에 대응시킵니다.이 배열 내용 사전 개체는 다시 키 -
«name», "category", "id", "created_time". 전에«user_likes»요청을 잊지 마세요. 그래서 우리는 파가 있습니다. 그런 방법을 보내고은 :

- (void)request:(FBRequest *)request didLoad:(id)result { 
    if ([result isKindOfClass:[NSArray class]]) { 
     result = [result objectAtIndex:0]; 
    } 
    if ([result objectForKey:@"owner"]) { 
     [self.label setText:@"Photo upload Success"]; 
    } else if ([result objectForKey:@"data"]){ 
     NSArray *likes = [result objectForKey:@"data"]; 
     NSString *[email protected]"You don't like Steve"; 
     for (NSDictionary* mylike in likes) { 
      NSString *mylikeName = [mylike objectForKey:@"name"]; 
      if ([mylikeName isEqualToString:@"Steve Jobs"]) { 
       [email protected]"You like Steve"; 
       break; 
      } 
     } 
     [self.label setText:text]; 
    } 
}; 

당신은 당신이 같은 방법으로 결과를 예를 들어있는 TableView에 정보를 표시하는 데 사용할 다음 객체의 변수를 작성하고 분석 할 수 있습니다. 행운을 빕니다!

+0

. 고마워. 그 사이트의 링크를 나에게 줄 수 있니? 다른 날에도 확인해 보겠습니다. –

+0

더 이상이 기사의 구문 분석 예제가 없습니다. Facebook SDK를 사용하기위한 초보자 가이드입니다. 어쨌든 ... http://habrahabr.ru/blogs/macosxdev/116417 – Sergnsk

+0

ohk ... 도와 주셔서 감사합니다 ... 구현하려고합니다. –

관련 문제