Подтвердить что ты не робот

"Как" страница, использующая API-интерфейс Facebook Graph

Используя API-интерфейс Graph, я бы хотел, чтобы у авторизованного пользователя была "как" страница.

Я попробовал опубликовать следующие

https://graph.facebook.com/${PAGE_ID}/likes?access_token=${ACCESS_TOKEN}

И я получаю ошибку HTTP 500, сопровождаемую "Недопустимый параметр post_id" в теле ответа JSON. Похоже, ресурс /likes подходит для того, чтобы нравиться стена, а не страница. Как мне заставить это работать со страницей?

4b9b3361

Ответ 1

Facebook объявила о поддержке любимого URL за пределами Facebook с помощью официального встроенного действия Like. Вы должны иметь разрешения publish_actions. Графический url для этого:  https://graph.facebook.com/[User FB ID]/og.likes?object=OG_OBJECT_URL&access_token=USER_ACCESS_TOKEN

Однако вы не можете использовать это для того, чтобы в настоящее время использовать страницу в Facebook, поскольку документация:

Для страниц Facebook или веб-сайтов, которые не интегрируются с Facebook Аутентификация, разработчики должны продолжать использовать кнопку "Like" социальный плагин.

Ответ 2

Обновление Июнь 2016

Невозможно понравиться страница с использованием API Facebook, как указано на странице /{user_id}/likes о создании/обновлении/удалении:

Вы не можете выполнить эту операцию на этой конечной точке.

В предыдущих версиях сообщение было более четким (см. цитату ниже), но результат тот же: это невозможно.

Май 2014

Страница документации /{user-id}/likes Готовность к Публикация Страницы:

Вы не можете публиковать, используя этот край, поскольку невозможно использовать страницу Facebook через любой API. Вы должны использовать кнопку Like, если вы хотите, чтобы люди могли любить страницу в вашем приложении.

Это наиболее очевидное и ясное утверждение, которое могло дать мне ответ на вопрос.

Ответ 3

Если вы хотите использовать эту функциональность на вкладке страницы или холсте в facebook (скажем, чтобы любить страницу с помощью страницы с подобным названием), работа вокруг вас может включать то, что Том Уэллс предложил в своем ответе Луке. Сначала вы вставляете версию своей iframe своей кнопки на своей странице, а затем просто слушаете событие edge.create в своем JS так:

FB.Event.subscribe('edge.create',
    function(response) {
        alert('You liked the URL: ' + response);
        // ...
    }
);

В обратном вызове вы можете иметь дело с тем, что происходит, когда пользователю понравилась страница, например, если вы переходите от страницы с подобными воротами или показываете только понравившийся контент.

Когда пользователь нажимает кнопку, похожую на iFrame, ваш JS-код должен получать событие edge.create, предполагая, что iFrame был настроен так, чтобы указывать на URL страницы, о которой идет речь.

Ответ 5

Я считаю, что это запрещено, за исключением конкретных сайтов-партнеров, таких как визг. Причина в безопасности, вы могли бы разместить некоторый javascript на странице и иметь всех, кто посещает эту страницу "Like", используя ее без их ведома.

См. Как мне нравится URL-адрес? на форуме разработчиков платформы Facebook

Ответ 6

Вам может понравиться объект с его идентификатором объекта, используя Facebook api, используя следующий фрагмент кода

[FBRequestConnection startForPostWithGraphPath:[NSString stringWithFormat:@"/%@/likes",{object_id}] graphObject:nil completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
   //do you customisation post like here
}];