1

Facebook アプリケーションを作成しましたが、認証が正しく機能しません。数時間グーグルで調べたにもかかわらず、解決しませんでした。ユーザーを適切に認証するスクリプトを作成してください。ユーザーが許可ボタンをクリックすると、すべての基本的なサフィックスを書き込んだと仮定して、「ようこそ」というテキストが表示されます..

「sdk/src/facebook.php」が必要です。
 $app_id = '私のアプリ ID';
 $canvas_page = "MY CANVAS URL";

// Application インスタンスを作成します (これを appId とシークレットに置き換えます)。
   $auth_url = "http://www.facebook.com/dialog/oauth?client_id="
            . $app_id . "&redirect_uri=" . urlencode($canvas_page) ."&scope=email,read_stream&installed=1";
  $facebook = new Facebook(配列(
  'appId' => $app_id 、
  'secret' => MY APP SECRET,
  「クッキー」=>真、
));
///... 解決するコード !
4

2 に答える 2

5

誰も究極の解決策を提供しません: 最終的に私は自分で解決しました. 私がすることはです。installed=1ユーザーがアプリケーションを許可すると、Facebook は URL とともに " " パラメータを送信します。そのため、このパラメーターを確認して、アプリケーションに再度リダイレクトしました。非常に優れた効率的なソリューションを見つけることができて、非常に満足しています。誰も私に投票可能な答えを答えませんでした。

if(isset($_REQUEST['installed']))
  echo("<script>top.href.location='http://apps.facebook/myapp' </script>");
于 2011-02-28T07:38:15.473 に答える
0

ドキュメントと PHP-SDK の例を混在させているようですが、PHP-SDKからを削除するとうまくいくはずです。

この回答のコードに従ってください:

<?php
require '../src/facebook.php';
$facebook = new Facebook(array(
  'appId'  => 'XXXXXXX',
  'secret' => 'XXXXXXXX',
  'cookie' => true,
));

$session = $facebook->getSession();
$loginUrl = $facebook->getLoginUrl();
$me = null;

if ($session) {
  try {
    $uid = $facebook->getUser();
    $me = $facebook->api('/me');

    echo "Welcome User: " . $me['name'] . "<br />";
  } catch (FacebookApiException $e) {
    error_log($e);
  }
} else {
    echo("<script> top.location.href='" . $loginUrl . "'</script>");
}
?>
于 2011-02-26T20:36:45.027 に答える