Получить пользователей Facebook, которым нравится URL / веб-страница, с помощью Open Graph

Есть ли способ получить список пользователей Facebook, которые нажали кнопку «Нравится» на внешнем веб-сайте?

  • Например. существует домен example.com , который был подтвержден через Facebook Insights как принадлежащий fbUser1 ( с использованием метатегов OG ).
  • Где-то на example.com есть страница с несколькими XFBL-подобными кнопками, каждая из которых указывает на другой конкретный URL-адрес на example.com , например example.com/xyz , example.com/abc и т. Д.

Я бы хотел получить список пользователей, которым понравился example.com/xyz и из тех, кому понравился пример.com / abc .

Моим интуитивным подходом было бы посмотреть на graph.facebook.com/123456789/likes (где число - это идентификатор домена, взятый из аналитики FB), но это всегда возвращает пустой набор данных:

{
   "data": [

   ]
}

Я также пытался получить токен доступа OAuth из https://graph.facebook.com/oauth/access_token?type=client_cred&client_id=APPID&client_secret=APPSECRET (где 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);
        })
    });
});
13
задан Community 23 May 2017 в 12:22
поделиться