0

問題: Facebook アプリをローカル ホストから実行できますか?

説明: 自分の Web サイト ページで Facebook のウォール ポストを取得したいと考えています。テストのために、Facebook アプリを作成し、サイトの URL を「http:localhost:8088/fb/」に、アプリのドメインを「localhost」に設定しました。Facebookの壁の投稿にアクセスできるようにユーザーIDを取得したいのですが、ユーザーIDがゼロに等しいだけです。何度もチェックしました。しかし、すべてが正しいようです。ローカル ホストをサイト URL として使用できることを知りたいですか?? ローカル ホストからコードを実行してユーザー ID を取得できますか。以下は私のコードです。

<?php 
include_once "facebook.php";



$facebook = new Facebook(array(
               'appId' => '<app id>',
                'secret' => '<app secret>',
                'cookie' => true,
            ));

$uid = $facebook->getUser();
echo $uid;
$me = null;
if ($uid) {
  try {

   $me = $facebook->api('/me');
    $feed = $facebook->api('/me/feed/');
  } catch (FacebookApiException $e) {
    error_log($e);
  }
}

$params = array(
  'scope' => 'read_stream',
  'redirect_uri' => 'http://localhost:8088/fb/feeds.php'
);
if ($uid) {

    $logoutUrl = $facebook->getLogoutUrl();
} 
else {
    $loginUrl = $facebook->getLoginUrl($params);
}

?>
<!doctype html>
<html xmlns:fb="http://www.facebook.com/2008/fbml">
  <head>
    <title>php-sdk</title>
  </head>
  <body>
    <?php if($uid)

    {
    ?>
    <a href="<?php echo $logoutUrl; ?>">Logout</a>
    <?php
  }
else
{
?>
<a href="<?php echo $loginUrl; ?>">Login</a>
<?php
}   
     ?>

    <?php if ($me): ?>
    <?php
    echo "<pre>";
    print_r($feed);
    echo "</pre>";
    ?>
    <?php endif ?>
 </body>
</html>

ここで何が問題なのか教えてください。実行する必要がある設定はありますか。とても感謝しています。

4

4 に答える 4

1

はい、ローカルホスト環境からアプリを実行できます。アプリドメインにローカルホストを追加する必要がなく、サイトのURLが次のようになっていることを除いて、すべて正しく実行しました。

http:// localhost:8088 / fb /

「http:localhost:8088 /fb/」の代わりに

于 2012-11-28T09:23:10.950 に答える
1

localhost で Facebook API をテストするより良い方法は、最初に yourapp.local のような Web アプリケーションの仮想ホストを作成し、それに応じて Facebook アプリ情報に URL を設定することです。ローカル サイトとリモート サイト用に個別の Facebook アプリを作成できます。

于 2012-11-28T09:38:15.763 に答える
0

アプリにFacebookの集約(オブジェクト+アクション)がある場合、それはできないと確信しています。Facebookから直接アクセスする必要があるため

于 2012-11-28T09:52:48.947 に答える
0

ほとんどの場合できます。単なる iframe である Facebook アプリは、ホストに接続する必要はありません。接続するのは、あなた/ブラウザーだけです。

次の 2 つの点に注意してください。

  1. ローカルホストに SSL (https://) があることを確認してください。そうでない場合は、テスト Facebook アカウントの設定で SSL を無効にします。

  2. Facebook がホストにアクセスする必要がある状況の 1 つは、アプリでホストされている URL や画像の共有などです。ローカル アプリをテストするときは、外部プレースホルダーを使用します。

于 2012-11-28T09:29:47.307 に答える