Как я могу проверить, нравится ли пользователю моя страница через Facebook JS SDK в настоящее время? - PullRequest
0 голосов
/ 25 марта 2020

В последние дни я очень старался решить эту проблему, но я действительно не могу пройти. Я много раз встречал этот вопрос на этом форуме, но ни одно из представленных здесь решений не решило мою проблему, потому что они были опубликованы несколько лет назад go, и Facebook очень часто обновляет способ решения данной проблемы. Мой Facebook javascript SDK, чтобы проверить, нравится ли пользователю моя страница, выглядит следующим образом:

$(document).ready( function () {
        try {
            FB.init({
                appId  : '{my_app_id',
                status : true, // check login status
                cookie : true, // enable cookies to allow the server to access the session
                version: 'v5.0'
            });
        } catch (e) {
            alert(e.message);
        }
        try {
            FB.getLoginStatus(function(response) {
                if (response['status'] == 'connected') {
                    try {
                        FB.api(
                            "/{my_page_id}/likes", {access_token: 'my_app_token'},
                            function (response) {
                              alert(response.error.message);
                              if (response && !response.error) {
                                //code to check likes
                              }
                            }
                        );
                    } catch (e) {alert(e.message);}
                }
            });
        } catch (e) {
            alert(e.message);
        }

    });

Работает FB.init, а также FB.getLoginStatus, где ответ ['status'] действительно 'подключен ». Но мой FB.api не работает. Предупреждение (response.error.message); строка возвращает следующую ошибку: «(# 10) Для этой конечной точки требуется разрешение« manage_pages »или функция« Page Publi c Доступ к содержимому ». См. https://developers.facebook.com/docs/apps/review/login-permissions#manage -pages и https://developers.facebook.com/docs/apps/review/feature#reference -PAGES_ACCESS для подробностей. " Я проверял руководства для Facebook для разработчиков, но они очень неполные, по крайней мере, на португальском (я бразильский). Я очень устал от попыток заставить это работать самостоятельно, поэтому я ищу помощи от пользователей этого форума.

Заранее спасибо.

1 Ответ

0 голосов
/ 25 марта 2020

Конечная точка / page-id / likes возвращает лайки Страницы (например, другие Страницы, понравившиеся Странице), а НЕ пользователей, которым нравится Ваша Страница. А для получения этих данных вам необходимо владеть Страницей, и вам необходимо авторизоваться с разрешением manage_pages.

Невозможно получить список пользователей, которым нравится ваша Страница, единственный надежный способ проверить, нравится ли указанному c пользователю страница, путем авторизации этого пользователя с разрешением user_likes. После этого вы можете использовать конечную точку /me/likes, чтобы получить понравившиеся страницы. Хотя вам необходимо получить разрешение, проверенное Facebook, и вам понадобится очень веская причина, чтобы использовать разрешение.

Дополнительная информация: Как проверить, понравилась ли кому-то моя фан-страница с моего сайта

...