2011-10-05 5 views
13

페이스 북에 연결하고, 게시물을 얻고, 사용자가 좋아하는 다른 것들을 얻는 웹 앱을 개발 중입니다. 뉴스 피드 (Grap API의 홈 커넥션)를 사용하여 사용자 페이지에서 모든 게시물을 가져 오는 데 문제가 있습니다.Facebook Graph Api json 누락 된 게시물

사용자를 위해 내 앱에서 액세스 토큰을받을 때 read_stream, user_activities 및 오프라인 액세스 권한을 요청합니다. 그런 다음 토큰을 사용하면 json 피드를 얻을 때

https://graph.facebook.com/me/home/?access_token=<retrived_access_token> 

일부 게시물 (사용자 페이지에 표시)이 누락되었습니다. 친구 만 볼 수있는 친구의 소식은 피드에 표시되지 않습니다. 동일한 문제는 현재 구독중인 사용자의 게시물에 있습니다.

잠시 동안 검색 중이 었는데, http://developers.facebook.com/docs/reference/api/의 링크를 사용하여 뉴스 피드를 얻었을 때 훨씬 많은 게시물이 있다는 것을 알았습니다. 그것은 페이스 북 API에 대한 테스트 콘솔 애플 리케이션을 위해 생성 된 토큰을 사용하는 것 같습니다.

그런 다음 http://developers.facebook.com/tools/explorer?method=GET을 사용하여 비슷한 결과를 얻을 수있는 액세스 토큰을 생성하려고했습니다. 하지만 생성 된 토큰에 가능한 모든 권한을 부여해도 제대로 작동하지 못했지만 여전히 누락 된 게시물이있었습니다.

그 게시물에 게시 된 Facebook graph API does not return all posts for user의 답변을 읽었습니다. 이는 게시물을 게시 한 사람이 설정 한 권한과 앱에서 데이터를 검색하지 않기를 원하는 사용자가 설정 한 권한 때문입니다. 몇 가지 빠른 테스트를 실행하고 해당 설정을 변경하면 작동하는 것으로 나타났습니다. (누군가가 해당 게시물을 두 피드에서 모두 사라지게 할 때 - 사용자 용 내 앱 토큰을 사용하고 API 참조 페이지의 링크 아래에서 사라질 것입니다.)하지만 그렇지 않습니다. 경우.

api 참조 페이지에서 생성 된이 토큰에는 특별한 권한이있는 것으로 보입니다.

나는 가능한 한 사용자 페이지에서 많은 게시물을 얻을 필요가 있습니다. 나는 저자에 의해 차단 된 것을 얻지는 않을 것이라는 것을 알고 있지만, 많은 사용자들이 다른 사용자를 구독하면서 실제로 사용자 페이지에 표시된 게시물에 액세스해야합니다.

나는 또한 Facebook graph API: feeds missing in json response을 읽었지만 도움이되지 않았습니다.

정말 도움이됩니다.

+1

대부분의 내 질문에 답할 수있었습니다 (http : // stackoverflow.com/questions/6214535/what-is-the-difference-feed-posts와 statuses-in-facebook-graph-api/7983267 # 7983267), 그러나 나는 아직도 명확하고 도움이되는 대답에 현상금을 수여 할 것입니다. 그 정보를 보완 할 수 있습니다. –

답변

4

피드/home Graph API에서 전체 게시물 목록을 가져올 수는 없지만 FQL을 사용하여 stream 테이블을 쿼리하면 친구가 만든 거의 모든 게시물을 가져올 수 있습니다. 여기에 간단한 예가 있습니다. 자바 스크립트 SDK와 함께 그렇게 :

var query = 'SELECT post_id FROM stream WHERE filter_key = "others"'; 
FB.api('fql', {'q': query}, function(posts) { console.log(posts.data); }); 

이것은 당신이 다음 게시물 정보의 나머지 부분을 가져 그래프 API를 사용할 수있는 포스트 ID를 얻을 것입니다. 또는 여기에 전체 필드 목록을 가져올 수 있습니다. FQL에서 *를 선택할 수 없으므로 원하는 각 항목을 나열한 다음 개별적으로 의견과 좋아요와 이름을 얻어야합니다.

+0

또한 FQL은 더 많은 결과를 얻기 위해 추가해야하는 LIMIT을 지원합니다. – zachallia

+0

왜 그게 거의 불가능합니까? 명확한 대답을 찾을 수없는 것 같습니다. – studgeek

+2

@studgeek 페이스 북은 모든 게시물을 필터링하지 않고 반환하기를 거부하고, 친구는 일반 페이스 북에서 차단되지 않아도 응용 프로그램의 개체를 특히 차단하는 개인 정보 설정을 가지고 있기 때문에 불가능합니다. – zachallia

1

할당 된/매체 버그가 http://developers.facebook.com/bugs/228057243915183에 있습니다. 구독하고 재현 할 수 있음을 표시하여 우선 순위를 높일 수 있습니다.

http://developers.facebook.com/bugs/231621496918030 또한 Facebook에서 "스트림 테이블과 me/그래프에 제한이 있습니다. 자세한 내용은 설명서를 참조하십시오. 앞으로 더 명확하게하려고 노력 중입니다." 개인적으로 나는 실제로 문서에 더 많은 정보가 있다고 생각하지 않습니다.