0

正如標題中提到的,我有一個應用程序,當顯示授權對話時請求權限,無論用戶是否點擊AllowDon't Allow按鈕,它們仍然被重定向到應用程序畫布頁面。Facebook的PHP SDK - 無論用戶點擊「允許」還是「不允許」,他們仍然被帶到App Canvas頁面?

我明白這是做與redirect_uri,但有沒有辦法區分兩種行動來執行不同的邏輯基於單擊按鈕執行不同的邏輯?

// Login or logout url will be needed depending on current user state. 
else { 
    $loginUrl = $facebook->getLoginUrl(array('canvas' => 1, 
               'fbconnect' => 0, 
               'display' => 'page', 
               'redirect_uri' => 'https://www.facebook.com/dialog/oauth?client_id=xxxxxxxxx&redirect_uri=http://www.domain.com/facebook/2011/app1/redirect.php&scope=publish_stream', 
               'req_perms' => 'publish_stream')); 

redirect.php在我的域名只是重定向迴應用程序。

感謝您的幫助!

回答

1

它會重定向到相同的URL,無論在身份驗證對話框中按下哪個按鈕,但有不同的GET參數:

如果用戶拒絕您的應用程序訪問,就應該把下面的PARAMS在url

  • ERROR_REASON = user_denied
  • 錯誤= ACCESS_DENIED
  • ERROR_DESCRIPTION = +的用戶+否認+您+請求

你需要在你的重定向頁面中處理這個。

if(isset($_GET['error'])) 
{ 
    die($_GET['error_description']); 
} 
else 
{ 
    // ... redirect as usual 
} 
+0

很好,謝謝你的幫忙。 – martincarlin87 2011-12-22 11:06:54

相關問題