【发布时间】:2011-02-02 15:38:46
【问题描述】:
有没有办法检索在外部网站上点击了“赞”按钮的 Facebook 用户列表?
- 例如有一个域 example.com 已通过 Facebook Insights 确认属于 fbUser1 (using OG meta tags)。
- 在 example.com 上的某处有一个页面,其中包含多个类似 XFBL 的按钮,每个按钮都指向 example.com 上的另一个特定 URL,例如example.com/xyz、example.com/abc 等
我想要得到的是喜欢 example.com/xyz 的用户列表和喜欢 example.com/abc 的用户列表。
我的直观方法是查看 graph.facebook.com/123456789/likes(其中数字是从 FB 洞察中获取的域 ID),但这总是返回一个空数据集:
{
"data": [
]
}
我还尝试从 https://graph.facebook.com/oauth/access_token?type=client_cred&client_id=APPID&client_secret=APPSECRET 获取 OAuth 访问令牌(其中 APPID 和 APPSECRET 来自标记为拥有该域的 FB 应用程序,使用OG 元标记),但这没有区别。
我也对非 OpenGraph(即 JS SDK、FQL 等)解决方案感兴趣。
编辑:使用以下代码(根据WideBlade 的answer 下面)仍然给我一个空的喜欢列表(第二个查询永远不会返回):
var objectsQuery = "select id from object_url where url in ('http://example.com/xyz', 'http://example.com/abc', 'http://example.com/123')";
var likesQuery = "select object_id from like where object_id = {0}";
FB.Data.query(objectsQuery).wait(function (objectRows) {
console.log(objectRows);
FB.Array.forEach(objectRows, function (objectRow) {
FB.Data.query(likesQuery, objectRow.object_id).wait(function (likeRows) {
console.log(likeRows);
})
});
});
【问题讨论】:
标签: facebook facebook-graph-api facebook-fql facebook-opengraph