"Как" страница, использующая API-интерфейс Facebook Graph
Используя API-интерфейс Graph, я бы хотел, чтобы у авторизованного пользователя была "как" страница.
Я попробовал опубликовать следующие
https://graph.facebook.com/${PAGE_ID}/likes?access_token=${ACCESS_TOKEN}
И я получаю ошибку HTTP 500, сопровождаемую "Недопустимый параметр post_id" в теле ответа JSON. Похоже, ресурс /likes
подходит для того, чтобы нравиться стена, а не страница. Как мне заставить это работать со страницей?
Ответы
Ответ 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 страницы, о которой идет речь.
Ответ 4
если ваше приложение является открытым графическим приложением, теперь вам может понравиться использовать api и больше не нужно для кнопки.
https://developers.facebook.com/docs/opengraph/actions/builtin/likes/
Ответ 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
}];