Intereting Posts
Как изменить symfony 2 doctrine mapper для использования моего настраиваемого каталога вместо моего Entity Directory в комплекте dropzone.js не загружается Получение URL-адреса реферера в php (включая параметры) Как интегрировать MoneyBookers в веб-приложение на PHP? Отображение Zend_Form_Element_Radio на одной строке Анализ URL-запроса в PHP Вы не выбрали файл для загрузки. PHP-код воспламенителя Покажите один CSS-стиль, если IE и другой, если ff или chrome в .css, используя PHP Как реализовать перекрестные продажи на веб-сайте? PHP-классы с пространством имен не могут быть загружены через spl_autoload_register? Добавление заголовков столбцов в файл CSV с помощью PHP Laravel 5.2 -> 5.3 Auth :: user () возвращает null PHP Проверяйте домен зарегистрированной электронной почты как адрес «school.edu» Что делает mysql_real_escape_string (), что делает addlashes ()? Автоматизировать разрешение Entrust с доступом к параметрам имени маршрута и проверить разрешение пользователя

API PHP PHP API не возвращает полные данные

У меня проблема с PHP SDK версии 4.0.

Я просто пытаюсь получить insights/page_fans_city через Graph API:

 $request = new FacebookRequest($session, 'GET', '/{my object}/insights/page_fans_city', array('period' => 'lifetime')); $response = $request->execute(); $client_graph_object = $response->getGraphObject(); print_r($client_graph_object); 

Однако данные не возвращаются:

 Facebook\GraphObject Object ( [backingData:protected] => Array ( [data] => Array ( ) [paging] => stdClass Object ( [previous] => https://graph.facebook.com/v2.0/... [next] => https://graph.facebook.com/v2.0/... ) ) ) 

Я знаю, что у меня есть данные Insights, которые я запрашиваю. Я могу выполнить тот же запрос через Graph Explorer:

→ /v.2.0/{my object} / insights / page_fans_city? Period = время жизни

 { "data": [ { "id": "{my object}/insights/page_fans_city/lifetime", "name": "page_fans_city", "period": "lifetime", "values": [ { "value": { ... }, "end_time": "2014-08-01T07:00:00+0000" }, { "value": { ... }, "end_time": "2014-08-02T07:00:00+0000" } ], "title": "Lifetime Likes by City", "description": "Lifetime: Aggregated Facebook location data, sorted by city, about the people who like your Page. (Unique Users)" } ], "paging": { "previous": "https://graph.facebook.com/v2.0/..., "next": "https://graph.facebook.com/v2.0/... } } 

Я должен отметить, что я получаю данные, если я опускаю сегмент page_fans_city . Когда он опущен, я могу просматривать данные только для page_fans_country . Следовательно

 $request = new FacebookRequest($session, 'GET', '/{myobject}/insights/page_fans_country', array('period' => 'lifetime')); 

а также

 $request = new FacebookRequest($session, 'GET', '/{myobject}/insights', array('period' => 'lifetime')); 

будет работать для меня …

Я подозреваю, что это мой токен доступа, но я не уверен, почему так будет. Приложение, которое я создал, требует read_insights разрешения read_insights .

Любые мысли или предложения?

Заранее спасибо,
Майк

Это был вопрос с разрешениями. Если вы когда-нибудь увидите:

 { "data": [ ], ... } 

Вероятно, ваш токен доступа не имеет достаточных привилегий для доступа к данным, которые вы запрашиваете (это или просто нет данных).

Моя проблема заключалась в том, что, хотя я был разработчиком приложения, и он был одобрен Facebook (с разрешениями manage_pages и read_insights ) – я не мог использовать токен доступа к доступу для извлечения данных о данных.

Мне нужен токен доступа пользователя!

Я легко сгенерировал токен доступа пользователя, вручную создав поток входа в документацию Facebook . Этот поток stackoverflow также был полезен.

Подробнее о токенах Facebook здесь .

Надеюсь, это поможет любому, кто спотыкается по этой теме!

-Майк