Facebook API を使用していますが、おかしな動作をしています。2 つの問題があります。
- getLoginUrl(...) を使用すると、ポップアップが表示されません。何もクリックせず、リダイレクトするだけです。
- 私のFBアカウントを使用すると、このコードがリダイレクトされ、「ユーザー」と「トークン」が表示されますが、同僚のFBアカウントで同じことを試みると、「エラーが発生しました。後でもう一度やり直してください」というエラーが表示されます。
リダイレクタのコードは次のとおりです。
require_once '../../src/facebook.php';
define('FACEBOOK_APP_ID',"xxx");
define('FACEBOOK_SECRET',"xxxxx");
define('REDIRECT_URI',"http://dev.example.com.au/php/work/redirectSimple.php");
$facebook = new Facebook(array(
'appId' => FACEBOOK_APP_ID,
'secret' => FACEBOOK_SECRET,
'cookie' => true
));
$user = $facebook->getUser();
if($user == 0)
{
$login_url = $facebook->getLoginUrl($params = array('redirect_uri' => REDIRECT_URI));
echo ("<script> top.location.href='".$login_url."'</script>");
}
else
{
echo ("<script> window.location.href='".REDIRECT_URI."'</script>");
}
そして私のリダイレクトされたコード ( redirectSimple.php ):
echo "\n WELCOME!";
require_once '../../src/facebook.php';
$facebook = new Facebook(array(
'appId' => "xxx",
'secret' => "xxxxx",
'fileUpload' => true,
'cookie' => true
));
$user = $facebook->getUser();
echo "\n user = ".$user;
$token = $facebook->getAccessToken();
echo "\n token = ".$token;
私はこれらのことを別のマシンでも試しましたが、同じ結果が得られました。ということは、アカウントかアプリの設定の問題でしょうか。