Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
495 views
in Technique[技术] by (71.8m points)

facebook graph api does not return all feed items on facebook page

at the time of this question, if you go here:

http://www.facebook.com/realplayer

you'll see six posts down, I have posted a photo with a message of "#highfive Cincinnati, OH"

but if you to either of these:

http://graph.facebook.com/realplayer/feed
http://graph.facebook.com/realplayer/tagged

the JSON that is returned seemingly includes everything on the wall, except for MY post. there is another photo post from someone else down below mine, and it is showing up (and both my photo and his photo are in the "Fan photos" section)

obviously, since I can see everything with these links already, it appears that access_token is not a part of the equation... BUT, some more info:

  • if I use an access_token from a session that isn't me, I can't see the post in the JSON
  • if I use an access_token from MY logged in session, then I DO see the post in the JSON

so I'm very confused.

if everyone in the world can see those posts on the wall without even authenticating, then I expect all of them to come back in the graph api as well.

anyone have thoughts on this?


I am aware of the "manage_page" permission... which I can use to get a list of accounts and special offline access tokens for those pages... and that's something I can explore... but it seems like alot of work when my post seemingly SHOULD be there in the graph

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

well looks like FB has this nice little anti-spam feature for pages... such that a non-admin can't write lots of messages on your page. what's interesting is that facebook uses similar "silent treatment" techniques that StackOverflow uses ( https://blog.stackoverflow.com/2008/09/podcast-21/ )... so when I look at a wall that I've been "spamming" I will see all of my posts... but no one else will.

I was able to create a new test account and get about 3 or 4 messages on a page before it started blocking me again

so probably the Graph API is working as designed :)

========================

UPDATE: this appears to only be part of the problem. I have constructed another page and app and been doing testing:

http://www.facebook.com/pages/RP-Test-Page/116735865065591

note the entry for "#highfive Orlando, FL" ... even an unauthenticated user can see this entry from the actual page... but there is seemingly no way for me to get it back through the API. He only posted once, so it can't be an "anti-spam" thing (you wouldn't think).

I have obviously tried the Graph API (with and without my own access token)

I have tried FQL (with and without my own access token)

and I have followed this post: http://en-gb.facebook.com/topic.php?uid=10381469571&topic=3815&post=51980 in order to request manage_pages and offline_access extended permissions from myself and use that to get the /me/accounts and then get the "impersonation" access token (whew)... STILL NOTHING

there must be some other super security thing going on. is it not possible to reliably get all of the wall posts from a page?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...