2010-11-18 78 views
1

我有一個php web應用程序設置來處理我的新facebook應用程序。我正在看我的應用程序http://apps.facebook.com/myapp,它顯示我的應用程序在iframe中。我如何授權Facebook應用程序? PHP

我想讓應用程序調出請求權限的屏幕。我似乎無法找到解釋流量的任何事情。一旦我創建$ fb-> loginUrl()鏈接並單擊它,我就沒有閱讀配置文件詳細信息的問題,但是我想要一個權限請求,以在您首次訪問應用程序時自動加載。

+0

[iFrame App。權限請求?](http://stackoverflow.com/questions/3436496/iframe-app-permissions-request) – 2010-11-18 22:38:49

回答

3

試試這個代碼 - 它是我在創建應用程序時使用的代碼。我從您的消息中假設您使用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>"; 
} 

不要忘記在新的瀏覽器和其他帳戶上測試它。

+2

看@ yannick-richard的答案 - 他是絕對正確的。你應該糾正你的代碼片段。 – zavg 2013-07-13 12:16:25

+0

謝謝。我編輯了答案。 – 2013-11-29 14:53:28

3

與新的PHP SDK getSessions()不工作了,應該使用這樣的`:

如果($用戶= $ facebook->的getUser()){//用戶登錄和授權我們

相關問題