2012-02-09 4 views
3

署名されたリクエストは、承認されていないページを表示するときにこのように表示されます。Facebookタブは、認証されたユーザーの署名付きリクエストでページ情報を失う

Array ( 
    [algorithm] => HMAC-SHA256 
    [issued_at] => 1328803958 
    [page] => Array ( 
    [id] => 114951721840 
    [liked] => 1 
    [admin] => 1) 
    [user] => Array ( 
     [country] => us 
     [locale] => en_US 
     [age] => Array ([min] => 21) 
    ) 
) 

アプリを承認した後、最初のタブページの署名リクエストは次のようになります。

Array ( 
    [algorithm] => HMAC-SHA256 
    [expires] => 1328810400 
    [issued_at] => 1328804617 
    [oauth_token] => AAAEQiWKOJTUBAB7la6TzNybfDkv6eYwtGUayappUspm3hWx6qKAFw3Ahbdhqv1xZC27WmrZC0yMMdtE0pdxoiUruZABg1zN1DalnYqS5AZDZD 
    [page] => Array ( 
    [id] => 114951721840 
    [liked] => 1 
    [admin] => 1) 
    [user] => Array ( 
     [country] => us 
     [locale] => en_US 
     [age] => Array ([min] => 21) 
    ) 
) 
    [user_id] => 30811359 
) 

最後に、このページからナビゲートすると、署名されたリクエストは次のようになります。私は、ユーザーを決定することができます

Array ( 
    [algorithm] => HMAC-SHA256 
    [code] => 2.AQAq5nTl5j7tMkqF.3600.1328810400.5-30811359|tXdv-ci5z1GIzo9CY5HXp_piL3I 
    [issued_at] => 1328804621 
    [user_id] => 30811359 
) 

が有効なユーザーに好き、私は、私は、最初のタブページから移動した後、標準の署名リクエストデータを失う理由を把握したいです。

UPDATE: 私はセッション変数に署名した要求を格納し、後続のページでそれをロードした場合、私は完全な署名要求を維持します。私はこれをしてはならない理由はありますか?

答えて

7

更新:署名されたリクエストをセッション変数に格納し、それを後続のページに読み込むと、完全な署名付きリクエストが維持されます。私はこれをしてはならない理由はありますか?

これはまさにあなたがすべきことです。

署名されたリクエストは、Facebookタブが最初にFacebookによって読み込まれたときにのみ送信されます。 Facebookがページロードをそれ以上開始しないため、Facebookタブ内でのその後のナビゲーションには署名付きのリクエストはありません。

+0

ありがとう、すべてがうまくいくようです。 –

1

「Jeremy Jones」と同様の問題に直面しています。他の投稿では、signed_requestが$_REQUEST['signed_request']リターンにあるはずです。それは私のために空であり、私は$signed_request = $facebook->getSignedRequest();のためのいくつかの値を得るが、ここでpage配列がありません。

+1

あなたのアプリケーションのページタブのURL設定で署名付きリクエストが空の場合は、それをindex.phpに指定する必要があります(ソースhttp://stackoverflow.com/a/5264840) – chepe263

関連する問題