0

私は自分のウェブサイトの1つでFacebookConnectを使用しています。このために私はphpsdkライブラリを使用しました。

私は次のコードを使用しています:

<?php
  require APP_PHYSICAL_PATH.'includefiles.php';
  $loginUrl = $facebook->getLoginUrl(
        array(
        'req_perms' => 'email,user_location',
        'next'=>APP_URL.'views/search.php?validate=true'

        )
);
?>  
   <a href="<?php echo $loginUrl; ?>">
    <img src="http://static.ak.fbcdn.net/rsrc.php/zB6N8/hash/4li2k73z.gif">
  </a>

問題は、認証が成功すると検索ページに移動しますが、URLにセッション情報が表示されることです。例えば

http://mydomain/views/search.php?validate=true&session={"session_key"%1A"4.7REQluh3EVBGKiA5m8cNlg__.6600.1700968000-900001178893860"%  

このセッション情報が表示されないようにしたいと思います。これを達成する方法はありますか?

これで私を助けてください

ありがとう

パンカイ

4

1 に答える 1

2

この問題に対する私の解決策は次のとおりです。

  • ユーザーがFacebookのログインボタンをクリックすると、ポップアップウィンドウが表示されます(できればURL入力バーなしで)。また、'display' =>'popup'パラメーターをgetLoginUrlメソッドに渡すことができます。これは、ポップアップウィンドウにより適したFacebook接続ページの別のレイアウトを使用するためです。
  • Facebookのログインとアクセス許可の付与が成功すると、Facebookは表示したくないURLにリダイレクトします。
  • リダイレクト先のページで、ウィンドウを閉じるjavascriptをエコーする必要があります。

別の解決策は、iframe内でこの接続全体を実行することです(ただし、このアプローチはテストしていません)。

于 2011-03-24T11:00:33.073 に答える