2012-04-04 19 views
1

我正在Facebook頁面內做一個Canvas應用程序。Facebook SDK 3.1.x將顯示認證頁面嗎?

我非常簡單的問題是:使用最新的facebook SDK(今天剛下載),如果用戶還沒有授予您的應用訪問權限,SDK中的facebook類會自動確定並嘗試獲得授權?

我可以手動在這裏得到AUTH我的應用程序:

https://graph.facebook.com/oauth/authorize?client_id=<myClientID>&redirect_uri=<myRedirectURL>&type=user_agent&display=page&scope=publish_stream,%20user_about_me,%20user_likes,%20email 

這一切都工作得很好......但是當我試圖做使用example.php確實在SDK的東西,它會返回錯誤:

致命錯誤:未捕獲OAuthException:無效的OAuth訪問令牌簽名。拋出/public_html/bridge/base_facebook.php在線1107

因此,我的問題是:我應該得到一個有效的OAuth訪問令牌,或者我設置facebook的PHP SDK錯了嗎?

這裏是我的完整的PHP代碼生成錯誤:

<?php 
require 'facebook.php'; 

$facebook = new Facebook(array(
'app_id' => '<my app id>', 
'app_secret' => '<my app secret>', 
)); 

$user = $facebook->getUser(); 

$jared = $facebook->api('/jaredmark'); 

if ($user) { 
try { 
// Proceed knowing you have a logged in user who's authenticated. 
$user_profile = $facebook->api('/me'); 
} catch (FacebookApiException $e) { 
error_log($e); 
$user = null; 
    } 
} 

// Login or logout url will be needed depending on current user state. 
if ($user) { 
    $logoutUrl = $facebook->getLogoutUrl(); 
} else { 
    $loginUrl = $facebook->getLoginUrl(); 
} 

此代碼基本上是從示例直接複製/粘貼,有一些小的修改。

+0

我想沒有人知道嗎? – 2012-04-05 14:19:52

回答

0

似乎並不是這樣,PHP SDK將顯示身份驗證彈出窗口,而不必手動導致它通過重定向到該特定頁面來執行此操作。 嘆息

相關問題