2012-05-25 91 views
4

我的Facebook應用程序上的簽名請求有問題。第一次是好的,我知道如果用戶喜歡或不喜歡我的應用程序。但是,當我重新加載應用程序(鏈接,表格,像)我鬆散的簽名請求,(只刷新[F5],和作品不同)..Facebook重新加載後簽名的請求空

我真的不明白爲什麼?

鏈接不工作了:(

在應用程序,你可以看到Facebook的$ ,$ _REQUEST和$ _SERVER信息。

謝謝大家的時間和幫助

回答

4

已簽名的請求位於Facebook的引薦標題中。它不會從鏈接鏈接到鏈接,因爲隨後的推介將來自您自己的網頁。使用signed_request獲取一些信息並將其保存在頁面之間的會話中。

+0

謝謝你的答覆,但我真的需要所有頁面上該信息(知道用戶相同的或不同) – Arthur

+2

因此,獲取該數據,將其放入會話參數服務器端,並在隨後的每個頁面上使用它們 –

1

你只是一次能夠得到signed_request。這正是Facebook在iframe中加載你的應用的時候。然後,您必須保存signed_request以進一步使用(子頁面)。您必須通過$ _REQUEST檢查數據,或者退回到存儲的signed_request值。 這是fbHelper組件的一個小例子。我希望這可能給你一些想法如何處理這個問題:

來源:http://www.facebook.com/HelperComponentlCommunity/app_412923142052609

if(array_key_exists('signed_request', $_REQUEST)) 
     $signed_request = $_REQUEST['signed_request']; 
    elseif(array_key_exists('signed_request' . $this->pageId, $_SESSION)) 
     $signed_request = $_SESSION['signed_request' . $this->pageId]; 
    else 
     return false; 

    $facebook_data= $this->parse_signed_request($signed_request);