2011-03-14 4 views
0

私はちょうどあなたがページを明らかにするために "好き"でなければならない、素早くFacebookのiFrame "fangate"アプリを一緒に投げた。Facebook iFrameアプリ、このコードは正しいですか?

私は、オンラインでやる方法が数多くあるので、アプリを公開する前に自分のメソッドが安全に使用されていることを確認したかっただけです。

は、コードを..and ..:君たちは

<?php 
require 'facebook.php'; 

$facebook = new Facebook(array(
'appId' => "__CODE_HERE__", 
'secret' => "__CODE_HERE__", 
'cookie' => true 
)); 
$signed_request = $facebook->getSignedRequest(); 

    if($signed_request != false){ 
     if($signed_request["page"]["liked"]) { 
      echo "you LIKE this page now!!"; 
     } else { 
      // User likes the fan page.. display restricted data. 
      include 'index.php'; 
     } 
    } 
    else 
    { 
     header('LOCATION: http://www.facebook.com/'); 
    } 

    ?> 

どう思いますか?これはかなり安全と思われ、私が遭遇した最も一般的な方法です。あなたは他のものを含めるでしょうか?

すべてのフィードバックを歓迎.. :)私はこれですべての問題を見ることができない

--Conor

答えて

1

私の代わりに私が文書からのアプローチを使用し、全体のPHP-SDK このためだけをロードしません。

$signed_request = $_REQUEST["signed_request"]; 
list($encoded_sig, $payload) = explode('.', $signed_request, 2); 
$data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true); 

if (empty($data["page"]["liked"])) { 
    echo "You are not a fan!"; 
} else { 
    echo "Welcome back fan!"; 
} 

私はこのことについてtutorial書いたと現実の世界の例を提供しましたこれの重要性の

+0

こんにちはifaour、 私はこの解決策をどこかに見ていましたが、作者はそれが "不正"で安全ではないと言いました。 私はあなたが良いあなたの機能のチェックを参照してください参照してください。 私はそれに行くでしょう..ありがとう。 – conor

+0

@Conor H:「不正な」部分はどうですか? – ifaour

1

。私はこのように動作する同様のソリューションを見てきました。

関連する問題