FaceBook Connect API: сессия все еще активна после выхода из FB

Я нашел пару похожих вопросов, но все они обсуждают, выходит ли пользователь из системы через подключение. Я задаю другой вопрос:

У меня есть приложение, пользователь уже авторизовался на Facebook и уже добавил это приложение. Итак, на домашней странице приложения написано «Добро пожаловать, имя пользователя», поскольку сеанс пользователя уже существовал.

Затем я вышел из FaceBook.com (не из своего приложения), открыл facebook.com и в правом меню щелкнул Logged Out! и увидел сообщение, что я вышел из системы.

Я снова обратился к своему приложению, сделал пару обновлений, но там все еще написано «Добро пожаловать, имя пользователя». Вместо приветственного сообщения должно быть написано «Войти в Facebook», так как я уже вышел из Facebook.

Ниже показано, что я использую для получения сеанса FB.

    $session = $facebook->getSession();

    if(!empty($session)) {
    # Active session, let's try getting the user id (getUser()) and user info (api->('/me'))
    try{
        $uid = $facebook->getUser();
        $user = $facebook->api('/me');
    } catch (Exception $e){}

    if(!empty($user)){
        # User info ok? Let's print it (Here we will be adding the login and registering routines)
        print_r($user);
    } else {
        # For testing purposes, if there was an error, let's kill the script
        die("There was an error.");
    }
} 

Пожалуйста, помогите мне, как решить эту проблему.


person Zeeshan Hashmi    schedule 17.09.2011    source источник
comment
Но это приведет к истечению срока действия всех файлов cookie, есть ли способ настроить конкретный файл cookie для решения проблемы?   -  person Zeeshan Hashmi    schedule 17.09.2011


Ответы (1)


в вашем браузере может храниться файл cookie FB.. попробуйте истечь, чтобы FB не использовал его для входа в систему.. попробуйте .. $past = time() - 3600; foreach ( $_COOKIE as $key => $value ) { setcookie( $key, $value, $past, '/' ); }

person mjs    schedule 17.09.2011
comment
Но это приведет к истечению срока действия всех файлов cookie, есть ли способ настроить конкретный файл cookie для решения проблемы? - person Zeeshan Hashmi; 17.09.2011
comment
я думаю, что файл cookie FB создается с именем fb_‹app-id› или fbs_‹app-id› - person mjs; 18.09.2011
comment
Но как я могу удалить файл cookie, который был установлен с другого домена? Например, проблема в том, что когда я выхожу из FB, я также должен выйти из своего приложения, но этого не происходит. Теперь, если вы хотите, чтобы я удалил файл cookie, я могу удалить только файл cookie, установленный доменом моего приложения. Вы понимаете? - person Zeeshan Hashmi; 18.09.2011
comment
Это помогло мне - person mjs; 19.09.2011
comment
Я думаю, что FB API глючит, и я не думаю, что у людей здесь есть решение проблемы. - person Zeeshan Hashmi; 23.09.2011