我希望使用图形API搜索过去30天的帖子(新闻提要)?最佳实践是什么?Facebook Graph API是否有API限制来限制HTTP请求的请求?
我希望使用图形API搜索过去30天的帖子(新闻提要)?最佳实践是什么?Facebook Graph API是否有API限制来限制HTTP请求的请求?
这是一种方法。但更好的选择是使用 FQL,它由JavaScript SDK使用,使用fb.dataquery方法。你需要做的是使用stream表来获取用户的状态帖子。Searching
You can search over all public objects in the social graph with https://graph.facebook.com/search. The format is:
https://graph.facebook.com/search?q=QUERY&type=OBJECT_TYPE
We support search for the following types of objects:
* All public posts: https://graph.facebook.com/search?q=watermelon&type=post * People: https://graph.facebook.com/search?q=mark&type=user * Pages: https://graph.facebook.com/search?q=platform&type=page * Events: https://graph.facebook.com/search?q=conference&type=event * Groups: https://graph.facebook.com/search?q=programming&type=group * Places: https://graph.facebook.com/search?q=coffee&type=place¢er=37.76,122.427&distance=1000 * Checkins: https://graph.facebook.com/search?type=checkin
You can also search an individual user's News Feed, restricted to that user's friends, by adding a q argument to the home connection URL:
* News Feed: https://graph.facebook.com/me/home?q=facebook
json_decode
)通过此url接收到的json对象。https://graph.facebook.com/[USERNAME/USERID]?fields=posts&access_token=[A VALID ACCESS TOKEN]
最好的方法是使用PHP的file_get_contents函数来获取该URL。
如果无法使用此方法,则可以使用cURL获得相同的响应;只需记住任何响应都是JSON格式,因此请使用json_decode开始处理信息。
典型的Facebook供稿应如下:
$feedurl = "https://graph.facebook.com/$user_id/feed?access_token=$valid_access_token";
$feed = file_get_contents($feedurl);
$feed = json_decode($feed);
foreach ($feed->data as $post){
//process each post
}
据我所见,Facebook没有特定的方法来搜索页面或用户的新闻动态;但可以通过他们的搜索API搜索Facebook。 https://developers.facebook.com/docs/reference/api/
可以使用Graph API完成。
如文档所述,将since参数设置为30天前。(从当前时间戳减去30天即可获得该值,也可以使用strtotime)
是的,API调用次数有限制,如Facebook平台政策所述,当前限制为:
~(5M MAU):应用程序的500万认证用户
~(每天100M个API调用)
~(每天5000万次印象)。
2016年8月17日起,FQL将不再可用且无法查询...
我不知道为什么Facebook要改变整个SDK/API而不是更新它。
您可以使用来自图形浏览器的访问令牌进行此调用,其中该数字代表一个 页面 ID
:
123123123123123?fields=posts.limit(5)