2011-08-16 150 views
1

使用Facebook API,在添加到fanpage(標籤應用)的自定義應用中,我如何獲得fanpage ID?Facebook API - 如何使用Facebook API獲取頁面ID?

這裏就是我想要實現:

  • 用戶進入全寬度的畫布應用程序,他授權自己那裏,並讓該應用選項卡添加到他的給藥
  • 的fanpages之一
  • 每個Facebook用戶去粉絲頁面,看到標籤和標籤顯示特定於該粉絲頁面的內容(這就是爲什麼我需要知道粉絲頁面ID)
  • 如果fanpage管理員想要改變某些內容,他會去全寬畫布並登錄到我的服務中(這裏是我存儲他想要在他的Fanpage中顯示的內容)
+0

可能重複[如何找出頁面安裝了我的Facebook Canvas應用程序?](http://stackoverflow.com/questions/5587784/how-can-i-find-out-what-page -has-installed-my-facebook-canvas-app) – ifaour

+0

canvas應用程序與標籤應用程序不同。例如,在標籤應用程序中,我沒有'signed_request'。 – pawlik

+1

我不是在談論上述答案中的畫布應用程序。這裏有我的建議,1)仔細檢查你的應用程序設置2)確保你沒有做任何重定向,否則signed_request將會丟失! 3)檢查這個[線程](http://forum.developers.facebook.net/viewtopic.php?id=91179) – ifaour

回答

3

從解析簽名的請求(一個標籤的iFrame),你可以得到的頁面ID - 內容將類似於以下(PHP的print_r的輸出):

stdClass Object 
(
    [algorithm] => HMAC-SHA256 
    [issued_at] => xxxxxxxxxx 
    [page] => stdClass Object 
     (
      [id] => FAN_PAGE_ID // target page id 
      [liked] => 1  // is the user a fan 
      [admin] =>   // is the user an admin 
     ) 

    [user] => stdClass Object 
     (
      [country] => ie 
      [locale] => en_GB 
      [age] => stdClass Object 
       (
        [min] => 21 
       ) 

     ) 

) 

欲瞭解更多信息,請參閱: http://developers.facebook.com/docs/authentication/signed_request/

+0

事情是在tab應用程序中的$ _REQUEST不包含'signed_request'(但在畫布模式它確實)。我如何得到它? – pawlik

+2

'signed_request'參數僅在初始選項卡加載時傳遞。你確定在標籤iFrame中沒有發生重定向嗎? – jBit

相關問題