2013-03-27 57 views
0

我試圖從Facebook使用Facebook API for php檢索我的相冊和照片。我已經創建了一個應用程序,現在我有我的AppId和我的AppSecretId。我不需要任何登錄窗口,因爲我想顯示自己的照片,而不是任何其他用戶的照片,但每次我嘗試檢索它們時,都會收到此消息「必須使用有效的訪問令牌來查詢有關當前用戶「。Facebook API - 檢索我自己的相冊和照片

我知道如果我要顯示來自其他用戶的照片,那麼我應該要求他們的登錄,然後生成訪問令牌,但情況並非如此。

我試着生成一個應用程序令牌,並試圖使用它作爲訪問令牌,但它也不工作。

這是我使用的代碼:

require_once("facebook/facebook.php"); 
     try{ 
      $facebook = new Facebook(array(
        'appId' => '<APPID>', 
        'secret' => '<SECRETID>', 
        'cookie' => true 
      )); 

echo($facebook->getUser()); 
     if(is_null($facebook->getUser())) 
     { 
       header("Location:{$facebook->getLoginUrl(array('req_perms' => 'user_status,publish_stream,user_photos'))}"); 
       exit; 
     } 
     $me = $facebook->api('/me'); 

     $albums = $facebook->api('/me/albums', array('access_token' => $facebook->getAccessToken())); 
     echo($albums); 
    }catch(Exception $e){ 
     echo "THIS IS THE ERROR: " . $e->getMessage(); 
     die; 
    } 

我希望你能幫助我與此有關。非常感謝!!

回答

1

爲您的個人帳戶生成Facebook訪問令牌的最簡單方法是訪問其圖譜API資源管理器。它會自動生成一個訪問令牌,您可以將其複製/粘貼到代碼中。

https://developers.facebook.com/tools/explorer

此外,還可以使用頁面上的「獲取訪問令牌」按鈕來請求與特定權限的訪問令牌。

+0

感謝您的回答!對此,我認爲訪問令牌在兩個小時後過期,是否有動態生成它的方法? – 2013-03-27 14:58:23

+0

動態生成訪問令牌有多種方式,所有這些方式都涉及以編程方式或以可視方式進行OAuth過程。 完成該過程的一個簡單方法是使用Temboo提供的OAuth嚮導。他們將直觀地引導您完成5個步驟的Facebook OAuth流程,並最終爲您提供訪問令牌。 您可以在此頁面找到Facebook OAuth嚮導(您需要註冊一個免費帳戶並登錄後才能看到OAuth嚮導鏈接): https://www.temboo.com/library/圖書館/ Facebook/Reading/PhotoAlbums/ (全面披露:我在Temboo工作) – 2013-03-27 16:17:43

相關問題