Я использую api графика.
У меня есть зарегистрированный пользователь, и я хочу получить обратно список идентификаторов страниц всех страниц, администратором которых он является.
Есть способ сделать это? Документы довольно плохие - круглые.
Я использую api графика.
У меня есть зарегистрированный пользователь, и я хочу получить обратно список идентификаторов страниц всех страниц, администратором которых он является.
Есть способ сделать это? Документы довольно плохие - круглые.
Ответы:
Это просто с Graph API. Шаги:
manage_pages
разрешение от пользователя (расширенные разрешения).Вы можете протестировать эту процедуру в проводнике графиков -> Просто нажмите кнопку «Получить токен доступа» -> в разделе «Расширенное разрешение » установите флажок «manage_pages» и отправьте его. Он предоставит вам JSON-информацию о странице администратора.
источник
Я решил это с помощью некоторого FQL:
FB.api({method: 'fql.multiquery', access_token: <access_token>, queries: { query1: 'select page_id from page_admin where uid = ' + <uid>, query2: 'select page_id, name, page_url from page where page_id in (select page_id from #query1)' } }, function(queries){ var pages = queries[1].fql_result_set; }}
источник
Вы можете позвонить,
FB.api(/me/accounts)
если не хотите использовать FQL.«учетные записи» - это подключение объекта «Пользователь». См. Документацию для этого @ http://developers.facebook.com/docs/reference/api/user
Конечно, с Facebook всегда есть загвоздка. Сейчас этот метод будет возвращать не только страницы, администратором которых является пользователь, но и то, какие приложения он установил. Я почти уверен, что это НЕ предполагаемое поведение - я, кажется, помню, как использовал это несколько месяцев назад и получал только список страниц. В документации также не упоминаются приложения из этого списка.
Однако эту проблему легко решить - Facebook возвращает имя, категорию и идентификатор для каждого элемента в списке, и каждое приложение имеет категорию «Приложение». Я просто убеждаюсь, что перечисляю только те элементы, категория которых не является «Применение».
источник
перейти по этому адресу
Просто нажмите на получение токена доступа и перейдите к расширенному разрешению
Установите флажок manage_pages
и нажмите Получить токен доступа
Затем под FQL напишите это
Нажмите "Отправить". и вы получите все списки страниц, которые вошли в систему с правами администратора
источник
me/accounts
поддерживаетtype
параметр запроса?Вы запрашиваете разрешение с помощью JavaScript SDK при входе в систему
FB.login(function(){}, {perms:'manage_pages'});
а затем, как только они войдут в систему, вы можете получить страницы (и приложения) следующим образом:
FB.api('/me/accounts', function(response){ console.log(response); })
источник
{perms: 'manage_pages'}
и{scope: 'manage_pages'}
?Вы также можете использовать разрешение pages_show_list, если вам нужен только список страниц facebook, администратором которых является пользователь.
Разрешение «manage_pages» запрашивает у пользователя разрешение на управление его страницами, что может быть слишком навязчивым в зависимости от того, для чего вам это нужно.
источник
Обратите внимание, что ваше решение возвращает как страницы, так и приложения . Если вам строго нужны Pages, вы можете использовать FQL Multiquery с предложением «Тип не равно», например:
источник
Разрешение
действие
источник
источник
В новом GRAPH API v3 с Javascript используйте поле «задачи» вместо поля «perms».
Вместо того, чтобы искать в массиве «АДМИНИСТРА», ищите «УПРАВЛЕНИЕ».
Полная информация здесь: https://developers.facebook.com/docs/pages/access-tokens
источник