多くの人が指摘しているように、HybridAuth のドキュメントは非常に不足しているため、認証シーケンスの試行中に期限切れのトークンを処理する適切な方法を見つけるのに苦労しています。私のコードは現在:
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
で予期される例外がスローされます (ただし、エラー メッセージには非常に重要な情報が欠落しており、誤解を招く可能性があります)。 )。
メソッドを使用してHybridAuthにトークン情報を忘れるように指示する必要があることを別のスレッドで見つけることができました(見つけられなくて申し訳ありません。例を知っている場合はリンクで自由に編集してください$adapter->logout();
) .
ならどうしよう?リダイレクトする場合、どのアドレスにリダイレクトする必要がありますか? ここでのベストプラクティスは何ですか?
どんな洞察も感謝します!