2011-02-01 112 views
3

我創建了一個簡單的Facebook iframe應用程序,用作頁面上的選項卡。它一切正常,但我現在需要獲取使用該選項卡的頁面的ID,以便我可以顯示特定於該頁面的信息。如何在iframe應用程序中獲取Facebook頁面ID(C#)

我在文檔中看到在signedrequest中有一個名爲「ProfileId」的值,它應該是我正在尋找的頁面的id,但是每次嘗試使用我遇到的signedrequest所以我顯然不明白我需要做什麼。

有人可以解釋我如何獲得頁面ID?我不希望用戶必須授權應用程序,因爲我對他們的任何信息不感興趣,我只想顯示該標籤所在的頁面的ID。

回答

3
<?php 

include "facebook.php"; //Facebook PHP SDK 

$app_id = "APP_ID_HERE"; // Your application id 

$app_secret = "APP_SECRET_HERE"; // Your application secret 

$facebook = new Facebook(array(
'appId' => $app_id, 
'secret' => $app_secret, 
'cookie' => true 
)); 

$signedrequest = $facebook->getSignedRequest(); 

$page_id = $signedrequest["page"]["id"]; 
$is_admin = $signedrequest["page"]["admin"]; 
$is_liked = $signedrequest["page"]["liked"]; 

echo "Page id: ". $page_id; 

?> 
+5

這不是.NET解決方案 – Fabrice 2011-04-27 23:08:47

1

可以在FacebookWebContext.Current.SignedRequest.Data使用的信息:

if (FacebookWebContext.Current.SignedRequest != null) 
{ 
    dynamic data = FacebookWebContext.Current.SignedRequest.Data; 
    if (data.page != null) 
    { 
    var pageId = (String)data.page.id; 
    var isUserAdmin = (Boolean)data.page.admin; 
    var userLikesPage = (Boolean)data.page.liked; 
    } 
    else 
    { 
    // not on a page 
    } 
} 
相關問題