有没有办法检索在外部网站上单击了“赞”按钮的 Facebook 用户列表?
- 例如,有一个域example.com已通过Facebook Insights确认属于fbUser1(使用 OG 元标记)。
- 在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下面的回答)仍然给我一个空的喜欢列表(第二个查询永远不会返回):
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);
})
});
});