Facebook PHP:用户从Facebook注销后,可以';t使用其他用户登录到我的应用程序

Facebook PHP:用户从Facebook注销后,可以';t使用其他用户登录到我的应用程序,php,facebook,Php,Facebook,很抱歉标题混乱,情况如下 用户通过Facebook登录到我的应用程序 用户从facebook注销…其他人来到计算机 第二个用户尝试访问我的应用程序(不同的facebook帐户,同一台计算机) 他们不能…相反,脚本获取前一个用户的访问令牌 我正在使用facebook PHP SDK 当用户第一次尝试登录时,我会执行以下操作: unset($_REQUEST); unset($_COOKIE); //don't know if both are necessary session_destroy()

很抱歉标题混乱,情况如下

  • 用户通过Facebook登录到我的应用程序
  • 用户从facebook注销…其他人来到计算机
  • 第二个用户尝试访问我的应用程序(不同的facebook帐户,同一台计算机)
  • 他们不能…相反,脚本获取前一个用户的访问令牌
  • 我正在使用facebook PHP SDK

    当用户第一次尝试登录时,我会执行以下操作:

    unset($_REQUEST);
    unset($_COOKIE); //don't know if both are necessary
    session_destroy();
    
    然而,不知何故,新的fb帐户仍然被认为是最后一个(我得到了以前登录的用户访问令牌,当我尝试使用它时会抛出一个异常,因为该用户不再登录)

    我需要使用注销功能吗?我假设用户从facebook注销,这不是我想要做的,只要在我的应用程序中有一个新用户重新开始

    有什么想法吗?我真的不知道这些数据是从哪里来的,因为我正在清除一切。希望我错过了一些愚蠢的事情,但我想如果有人知道什么,我会问的。

    Sabrina

    使用带有有效用户访问令牌的注销应该可以正常工作。以下是我使用的“除非脱机访问被烫发”



    这似乎最终起了作用:

    $fb_key = 'fbsr_'.$facebookConfig['app_id'];
    setcookie($fb_key, '', time()-3600);
    $facebook->destroySession();
    

    谢谢,但我不想让用户退出facebook,只想退出我的应用程序Sabrina Gelbart 4月4日10:40

    通过执行$this->facebook->destroySession()来反驳您的问题; 将用户注销facebook而不是facebook,如果其他用户想要使用此计算机,他们应该从其facebook帐户注销=新用户可以登录您的网站


    你不希望用户的facebook在从你的网站注销时从facebook.com注销,对吗?这会让我感到沮丧

    当第二个用户尝试登录时会发生什么?你有任何错误吗?上面写着无效的用户授权令牌谢谢,但我不想让该用户退出facebook,只是退出我的应用程序。这最终导致的问题超出了它的价值。最后,我只使用js授权进行了切换,解决了我所有的问题。
    $fb_key = 'fbsr_'.$facebookConfig['app_id'];
    setcookie($fb_key, '', time()-3600);
    $facebook->destroySession();