外部 Web サイトで「いいね」ボタンをクリックした Facebook ユーザーのリストを取得する方法はありますか?
- たとえば、 Facebook インサイトを介してfbUser1に属することが確認されたドメインexample.comがあります( 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の回答によると)、いいねの空のリストが表示されます(2番目のクエリは返されません):
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);
})
});
});