2012-01-04 15 views
1

私は韓国のWeb開発者で、Facebookページにファンページを掲載しています。 とFacebookのiframeアプリを作成します。 私が知りたい唯一の情報は、ユーザーがページを気に入ったら です。は許可なしのファンページの検証を好きです

これまでのところ、私はfacebookからの署名付きのリクエストでそれをすることがありました。 しかし、私はアクセス許可を要求せずに検証し、このページを発見

http://www.facebook.com/ITsamsung?sk=app_298897280155645

誰も私がこの検証が行われている方法を理解することはできますか? おかげ

答えて

0

あなたはこのためにPHPを使用することができます。

<?php 

$signedRequestObject = parse_signed_request($_POST["signed_request"],YOUR_APPLICATION_SECRET); 

if ($signedRequestObject["page"]){ 
    // this means this signed_request was generated on a page 
    if ($signedRequestObject["page"]["liked"]){ 
     // the page was liked 
    } 
} 


//used functions 
function parse_signed_request($signed_request, $secret) { 
    list($encoded_sig, $payload) = explode('.', $signed_request, 2); 
    $sig = $this->base64_url_decode($encoded_sig); 
    $data = json_decode($this->base64_url_decode($payload), true); 
    if (strtoupper($data['algorithm']) !== 'HMAC-SHA256') { 
    echo 'Unknown algorithm. Expected HMAC-SHA256 : '; 
    return false; 
    } 
    $expected_sig = hash_hmac('sha256', $payload, $secret, $raw = true); 
    if ($sig !== $expected_sig) { 
    echo = 'Bad Signed JSON signature!'; 
    return false; 
    } 
    return $data; 
} 

function base64_url_decode($input) { 
    return base64_decode(strtr($input, '-_', '+/')); 
} 

?> 
+0

どうもありがとう!!!!!!!私はこの情報源を掘り下げなければならない!再度、感謝します :) –

0
<fb:visible-to-connection> 
    Here code for fans 
</fb:visible-to-connection> 
0

Facebookはもはや許可されていません。 $ signedRequestObject ["page"] ["liked"]は読み込んでいるユーザーがページを気に入っている場合はtrue、そうでない場合はfalseです。このフィールドは、v2.1のリリース後(2014年8月7日)に作成されたアプリには含まれなくなり、2014年11月5日には他のすべてのアプリで完全にtrueに設定されます。

関連する問題