首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HybridAuth意外会话行为

HybridAuth意外会话行为
EN

Stack Overflow用户
提问于 2016-04-01 08:03:09
回答 1查看 1.1K关注 0票数 2

我试图让HybridAuth忘记上一次用户登录,但什么也没成功!!然后,我注意到在使用HybridAuth时非常奇怪的会话行为:

1-即使使用session_destroy:,也不会销毁HybridAuth会话。

代码语言:javascript
复制
session_start();
var_dump($_SESSION);  //Session Values before authentication

require_once("hybridauth/Hybrid/Auth.php");
$config = 'hybridauth/config.php'; 

$hybridauth = new Hybrid_Auth( $config );
$google = $hybridauth->authenticate( "Google" );

session_unset();
session_destroy();

var_dump($_SESSION);  //Session values after destroy

产出:

代码语言:javascript
复制
Session Values before authentication!
array (size=2)
  'HA::CONFIG' => 
    array (size=3)
    < ----- content here ------>
  'HA::STORE' => 
    array (size=5)
    < ----- content here ------>

Session values after destroy
array (size=0)
    empty

我甚至在初始化Hybrid_Auth类之前就会得到会话值。当我刷新页面时,相同的值仍然存在,尽管在代码末尾清除的值似乎仍然存在。

2-在启动时清除会话时的无限重定向循环

代码语言:javascript
复制
session_start();
session_destroy();

require_once( "hybridauth/Hybrid/Auth.php" );
$config = 'hybridauth/config.php'; 

$hybridauth = new Hybrid_Auth( $config );
$google = $hybridauth->authenticate( "Google" );

当我运行上面的代码时,我会得到ERR_TOO_MANY_REDIRECTS错误!

这里发生什么事情?

EN

回答 1

Stack Overflow用户

发布于 2016-08-22 06:37:26

您可以同时为所有提供程序清除混合音频会话,方法是调用

代码语言:javascript
复制
$this->load->library('hybridauthlib');

$this->hybridauthlib->logoutAllProviders();

可以通过使用此方法修改Auth.php文件来删除特定提供程序的会话。

代码语言:javascript
复制
// --------------------------------------------------------------------

/**
* A generic function to logout from a specific provider 
*/ 

public static function logoutFromProvider($provider)
{
    $adapter = Hybrid_Auth::getAdapter( $provider );

    $adapter->logout();
}

然后,您可以像这样调用此方法

代码语言:javascript
复制
//$provider can be Facebook, Twitter, Google etc.
public function logout($provider)
{
    $this->hybridauthlib->logoutFromProvider($provider);
}
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36351104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档