Facebook应用程序授权

Facebook App Authorisation

本文关键字:授权 应用程序 Facebook      更新时间:2023-09-26

我创建了一个应用程序,这个应用程序可以在这里找到

当有人第一次使用该应用程序时,一切都正常工作。它生成对话框,允许用户查看我使用这个-请求的类型或权限

$url = $facebook->getLoginUrl(array(
'canvas' => 1,
'req_perms' => 'publish_stream, email, offline_access',
'fbconnect' => 0
));

一旦用户单击"确定",他们就会被重定向到我的应用程序所在的URL,而不是重定向到Facebook中应用程序的URL。

其他代码,我有工作与这个应用程序-

include_once("includes/src/facebook.php");
include_once("includes/src/facebook_config.php");
$facebook = new Facebook(array(
'appId'  => FACEBOOK_APP_ID,
'secret' => FACEBOOK_SECRET_KEY,
'cookie' => false,
'domain' => 'syncro-it.co.uk'
));

<div id="fb-root"></div>
        <script>
        window.fbAsyncInit = function() {
        FB.init({
            appId  : '<?=FACEBOOK_APP_ID?>',
            status : true, // check login status
            cookie : true, // enable cookies to allow the server to access the session
            xfbml  : true  // parse XFBML
        });
        FB.Canvas.setSize();
        };
        (function() {
        var e = document.createElement('script');
        e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
        e.async = true;
        document.getElementById('fb-root').appendChild(e);
        }());
        </script>

以前有人见过这个吗?如果是这样的话,我会错过一些愚蠢的东西吗?

试试这个:

<?
  // Remember to copy files from the SDK's src/ directory to a
  // directory in your application on the server, such as php-sdk/
  require_once('facebook.php');
  $config = array(
    'appId' => '2XXXXXXXXXXXX36',
    'secret' => 'XXXXXXXXXXXXXXXX43d18d86f157d',
    'fileUpload' => true,
  );
  $facebook = new Facebook($config);
  $user_id = $facebook->getUser();
if($user_id) {
    try {
        $user_profile = $facebook->api('/me','GET');
                echo $user_profile['birthday'];
                     //----------------------------------
                     //PUSH UR CODE HERE
                     //----------------------------------
    } 
catch(FacebookApiException $e) 
{
        $login_url = $facebook->getLoginUrl( array(
       'scope' => 'user_birthday'
        )); 
echo "<script type='text/javascript'>top.location.href = '$login_url';</script>";
exit;
}
}
else
{
        $login_url = $facebook->getLoginUrl( array(
                       'scope' => 'user_birthday'
                     )); 
    echo "<script type='text/javascript'>top.location.href = '$login_url';                     </script>";
                exit;
        }
    ?>

这只是用应用程序的设置改回旧的权限对话框