我正在开发一个用php api实现的facebook应用程序。我面临的问题是,当我点击取消时,它会将我重定向到同一个按钮,这意味着我根本无法关闭对话框。我想找到一种方法,当用户点击取消按钮在应用程序的fb页面上重定向他。 有什么方法我可以用php捕获取消操作。我被困这么多个小时.. 我在下面提供一些代码:
if(!$user){
$loginUrl = '';
if(isset($signed_request["app_data"])){
$loginUrl = $this->fb->getLoginUrl(
array(
'canvas' => 1,
'scope' =>'email, user_likes',
'redirect_uri'=>$curContest->fbpagelink .'?sk=app_'.$curContest->app_id . '?app_data=' . $signed_request["app_data"]
)
);
}else {
$loginUrl = $this->fb->getLoginUrl(
array(
'canvas' => 1,
'scope' =>'email, user_likes',
'redirect_uri'=>$curContest->fbpagelink .'?sk=app_'.$curContest->app_id
)
);
}
/* Redirect the main window NOT the iframe */
//print_r($_GET['app_data']);
echo '<script>top.location="'.$loginUrl.'";</script>';
}else{
//code of the app when user click on okay button ...
}
答案 0 :(得分:-1)
当用户取消授权选项时,Facebook会将其重定向回您的应用程序,并显示错误消息。返回url中的参数..
所以在代码中你可以写
if($_GET('error') || $_GET('error_reason')){
// redirect to your facebook page
}
希望这对你有用!!