很多人都注意到的HybridAuth文档非常缺乏,所以我很难找到在尝试的Auth序列中处理Expired Tokens的正确方法。我的代码目前是:
try {
$provider = /* Provider Object in our system */
// Initialize HybridAuth
$client = new Hybrid_Auth($provider->get_config());
// try to authenticate with the selected provider
$adapter = $client->authenticate( $provider->name );
// then grab the user profile
/* @var $user_profile Hybrid_User_Profile */
$user_profile = $adapter->getUserProfile();
} catch( Exception $e ) {
$user_profile = NULL;
$adapter->logout();
}
如果会话由于某种原因仍在我们的末尾仍然有效,但令牌已在提供者处过期,则$user_profile = $adapter->getUserProfile();
之前的行catch
正在抛出预期的异常(< em>虽然错误消息缺少一些非常重要的信息,但有些误导)。
我能够在另一个帖子中找到(我很抱歉找不到,如果您知道一个示例,请随时在链接中编辑)我需要指示HybridAuth使用$adapter->logout();
方法忘记令牌信息。
那么现在呢?我应该重定向,如果是的话,是什么地址?这里的最佳做法是什么?
非常感谢任何见解!