FQL-запросы, возвращающие значение 0 - PullRequest
0 голосов
/ 05 августа 2011

Я использую следующий код, чтобы попытаться получить информацию о странице, используя FQL.Очевидно, я удалил идентификатор приложения, секрет приложения, URL и идентификатор объекта (в запросе FQL).

Страница корректно входит в систему пользователя и запрашивает разрешение «read_insights».Я вхожу как пользователь, который является администратором страницы, к которой я пытаюсь получить доступ.

Ответ, который я получаю:

Array ( [0] => Array ( [metric] => page_like_adds [value] => 0 ) ) 

Я новичок в FQLтак что я уверен, что я делаю что-то глупое здесь.

<?php
require_once('facebook/src/facebook.php');
define('APP_ID', '');
define('APP_SECRET', '');

$facebook = new Facebook(array(
'appId'  => '',
'secret' => '',
'cookie' => true,
));

$app_id = "";
$app_secret = "";
$my_url = "";

session_start();
$code = $_REQUEST["code"];

if(empty($code)) {
  $_SESSION['state'] = md5(uniqid(rand(), TRUE)); //CSRF protection
  $dialog_url = "https://www.facebook.com/dialog/oauth?client_id=" 
  . $app_id . "&redirect_uri=" . urlencode($my_url) . "&state="
  . $_SESSION['state'] . "&scope=read_insights";

  echo("<script> top.location.href='" . $dialog_url . "'</script>");
}

if($_REQUEST['state'] == $_SESSION['state']) {
  $token_url = "https://graph.facebook.com/oauth/access_token?"
  . "client_id=" . $app_id . "&redirect_uri=" . urlencode($my_url)
  . "&client_secret=" . $app_secret . "&code=" . $code;

  $token = file_get_contents($token_url);
  $params = null;
  parse_str($token, $params);
} else {
   echo("");
}

$fql = "SELECT metric, value FROM insights WHERE object_id=OBJECT_ID AND        metric='page_like_adds' AND end_time=1272351600 AND period=86400";

$fqlresponse = $facebook->api(array(
'method' => 'fql.query',
'query' =>$fql,
));

print_r($fqlresponse);

?>

1 Ответ

0 голосов
/ 06 августа 2011

С помощью FQL:

$fql = "SELECT metric, value FROM insights WHERE object_id=OBJECT_ID AND        metric='page_like_adds' AND end_time=1272351600 AND period=86400";

вы выбираете показатель "page_like_adds", который представляет собой "Likes of your page content" до "1272351600", то есть "вторник, 27 апреля 2010".

Так что, я думаю, ваш запрос не тот, что вы хотите.

Какие метрики сообразительности вы хотите со своей страницы?

Предлагаю прочитать: https://developers.facebook.com/docs/reference/fql/insights/ (официальные метрики FQL для документов)

Вы также можете попробовать API Graph для доступа к аналитикам:

https://developers.facebook.com/tools/explorer/

...