oauth не отображает разрешение user_checkins - PullRequest
2 голосов
/ 24 февраля 2012

У меня есть сценарии, которые перенаправляют в диалог oauth на Facebook, и мне нужно разрешение user_checkins

<code><?php
session_start();
$app_id = "[APP_ID]";
$app_secret = "[APP_SECRET]";
$my_url = "(back to this page)";

$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=user_checkins"  ;
 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;

 $response = @file_get_contents($token_url);
 $params = null;
 parse_str($response, $params);

$graph_url = "https://graph.facebook.com/me?fields=checkins&access_token=" 
  . $params['access_token'];

 $user = json_decode(file_get_contents($graph_url));
 echo "<pre>";
 print_r($user);
 echo "
"; } еще { echo («Государство не соответствует. Вы можете стать жертвой CSRF.»); } ?>

только диалоговое окно

THIS APP WILL RECEIVE:

■ Your basic info

но должна быть еще одна строка с разрешением на регистрацию, не так ли?

Итак, я пытаюсь использовать Graph API Explorer. Сначала я проверил свое приложение, результат тот же, все еще не может получить разрешение user_checkins

Но если я изменю раздел «Приложение:» на Graph API Explorer и протестирую снова, Кажется, все в порядке ..

Итак, я думаю, что это причина моих настроек приложения .. или что-то еще ..

Не могли бы вы предложить мне, как это исправить?

Ответы [ 2 ]

9 голосов
/ 06 марта 2012

Судя по всему, я бы сказал, что Facebook отклонил разрешения user_checkins и friends_checkins и свернул их в user_status и friends_status.

В любом случае, запросите разрешение user_status вместо этого, и теперь вы сможете читать чеки пользователя.

3 голосов
/ 24 июля 2012

есть возможность получить чекины. Facebook дал другой вариант этому.

http://developers.facebook.com/docs/reference/api/user/#posts

Вы можете получить чеки с https://graph.facebook.com/me/posts?with=location

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...