1
У меня есть facebook страница Я построил приложение, чтобы быть на закладке приложение отлично работает с оригинальной URL это получить логин от Facebook и вернуться к URLfacebook приложения получить аутентификацию внутри страницы facebook
Как я могу получить авторизацию от пользователя без изменения URL-адреса «внутри iframe»?
require_once("facebook.php");
$facebook = new Facebook(array(
'appId' => 'App_id',
'secret' => 'Secret'));
$current_user = $facebook->getUser();
$params = array('scope' =>'email,user_likes,user_friends');
if ($current_user) {
try {
$expiration = time() + 172800;
$cookie_value = $current_user . '|' . $expiration;
setcookie('fbid', $cookie_value, $expiration , "/");
echo '<script type="text/javascript">
window.location = "like.php";
</script>';
} catch (FacebookApiException $e) {
$login_url = $facebook->getLoginUrl($params);
echo '<script type="text/javascript">
window.location = "' . $login_url . '";
</script>';
exit;
error_log($e->getType());
error_log($e->getMessage());
}
} else {
$login_url = $facebook->getLoginUrl($params);
echo '<script type="text/javascript">
window.location = "'.$login_url.'";
</script>';
exit;
}
Если вы хотите, чтобы вызвать диалоговое окно входа в систему через URL внутри вкладки страницы приложения, то вы должны сделать это в случае верхнего окна - 'top.location.href = 'login-url';' Но гораздо более удобный способ обработки логина в приложениях с вкладками страниц/холстом - это внедрение JS SDK и использование его метода «FB.login». Это не нужно перенаправлять на другой URL-адрес, но показывает диалоговое окно входа в простой накладной режим - гораздо приятнее пользовательский интерфейс. – CBroe