Как авторизовать приложение на Facebook? PHP - PullRequest
2 голосов
/ 19 ноября 2010

У меня есть php веб-приложение, настроенное для работы с моим новым приложением facebook.Я смотрю на мое приложение на http://apps.facebook.com/myapp, и оно показывает мое приложение в iframe.

Я пытаюсь заставить приложение выводить экран, на котором запрашивается разрешение.Я не могу найти ничего, что объясняет поток.У меня нет проблем с чтением информации профиля, когда я создаю ссылку $ fb-> loginUrl () и щелкаю по ней, но я хочу, чтобы запрос на разрешение автоматически загружался при первом входе в приложение.

Ответы [ 2 ]

3 голосов
/ 28 февраля 2013

с новым php sdk getSessions () больше не работает, следует использовать его следующим образом::

if ($ user = $ facebook-> getUser ()) {// пользователь вошел в систему и авторизовал нас

3 голосов
/ 19 ноября 2010

Попробуйте этот код - это рабочий код, который я использую при создании приложения. Я предполагаю из вашего сообщения, что вы используете PHP SDK

< ?php
    require_once('facebook.php');
// Create our Application instance.
$facebook = new Facebook(array(
  'appId'  => 'YOUR APP ID',
  'secret' => 'YOUR APP SECRET',
  'cookie' => true
));
if ($user = $facebook->getUser()) { //user is logged in and authorized us
    $user = $facebook->getUser();
    $fbme = $facebook->api('/me');
    print "Welcome User ID: " . $user;
    print_r($fbme);

} else { // User has not authorized us or is not logged in
    $params = array(
        'fbconnect'=>0,
                'canvas'=>1,
        'req_perms'=>'publish_stream,email',
    // For a full list of permissions: http://developers.facebook.com/docs/authentication/permissions
    );
    $loginUrl = $facebook->getLoginUrl($params);
     print "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
}

Не забудьте протестировать его в новом и новом браузере и другой учетной записи.

...