Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 用户从Myapp注销时未销毁Twitter会话_Php_Session_Twitter_Logout - Fatal编程技术网

Php 用户从Myapp注销时未销毁Twitter会话

Php 用户从Myapp注销时未销毁Twitter会话,php,session,twitter,logout,Php,Session,Twitter,Logout,我在我的web应用程序中使用OAuth,用户可以连接twitter。但当用户断开连接时,会删除会话并再次为用户打开登录窗口 我在应用程序中销毁会话,但它不会从twitter帐户注销。 当用户再次登录时,将自动验证以前的登录帐户 我在twitter/twitteroauth.php中更改了代码 function getAuthorizeURL($token, $sign_in_with_twitter = TRUE) { if (is_array($token)

我在我的web应用程序中使用OAuth,用户可以连接twitter。但当用户断开连接时,会删除会话并再次为用户打开登录窗口

我在应用程序中销毁会话,但它不会从twitter帐户注销。 当用户再次登录时,将自动验证以前的登录帐户

我在twitter/twitteroauth.php中更改了代码

          function getAuthorizeURL($token, $sign_in_with_twitter = TRUE) {
        if (is_array($token)) {
          $token = $token['oauth_token'];
        }
        if (empty($sign_in_with_twitter)) {
          return $this->authorizeURL() . "?oauth_token={$token}";
        } else {
           return $this->authorizeURL() . "?oauth_token={$token}&force_login=false"; 

        }
      }
在注销页面上,我写道:

session_start();
if(isset($_SESSION['TWITTER_status'])){
            session_destroy();
            unset( $_SESSION['TWITTER_status']);
            header('Location:connect.php');  
        } 

我如何才能完全破坏twitter会话,以便用户可以轻松切换帐户?

据我所知,OAuth会记住您的站点/应用程序与twitter帐户之间的链接。推特引导标签是不相关的;请将其删除。您无法从OAuth提供程序注销该用户。这必须由用户手动完成。您所能做的就是管理应用程序中的会话状态,并在注销后重定向到身份验证。如果用户已经登录到系统/浏览器,并且提供了权限,那么OAuth提供程序页面将采用该权限进行有效登录。谢谢。您能给出一些代码示例吗?