【问题标题】:Logout doesn't logout in laravel socialite注销不会在 laravel 社交名流中注销
【发布时间】:2018-08-22 18:07:57
【问题描述】:

我无法在我的应用程序中注销 google 用户,当我注销时,它正在重定向登录页面,说它已成功注销,但是当我单击使用 google 按钮登录时,它正在重定向到以前登录的用户,即,它不是退出了

我的控制器代码

class LoginController extends Controller {
/*
|--------------------------------------------------------------------------
| Login Controller
|--------------------------------------------------------------------------
|
| This controller handles authenticating users for the application and
| redirecting them to your home screen. The controller uses a trait
| to conveniently provide its functionality to your applications.
|
*/

use AuthenticatesUsers;

/**
 * Where to redirect users after login.
 *
 * @var string
 */
protected $redirectTo = '/home';

/**
 * Create a new controller instance.
 *
 * @return void
 */
public function __construct() {
    $this->middleware('guest')->except('logout','getLogout');
}

/**
 * Redirect the user to the GitHub authentication page.
 *
 * @return \Illuminate\Http\Response
 */
public function redirectToProvider() {
    return Socialite::driver('google')->redirect();
}

/**
 * Obtain the user information from GitHub.
 *
 * @return \Illuminate\Http\Response
 */
public function handleProviderCallback() {
    $user = Socialite::driver('google')->stateless()->user();
    if($user) {
        $authUser = $this->findOrCreateUser($user);

        Auth::login($authUser, true);
    }
    return view ( 'home' )->withDetails ( $user )->withService ( 'google' );
    // $user->token;
}

/**
 * Return user if exists; create and return if doesn't
 *
 * @param $githubUser
 * @return User
 */
private function findOrCreateUser($googleUser) {
    if ($authUser = User::where('email', $googleUser->email)->first()) {
        return $authUser;
    }
    return User::create([
        'name' => $googleUser->name,
        'email' => $googleUser->email, 
    ]);
}}

我已按照 laravel 文档步骤进行此社交登录,但我无法从我的应用程序中注销。谁能解释为什么会发生这种情况??

【问题讨论】:

    标签: laravel-socialite laravel-5.6


    【解决方案1】:

    好吧,我终于找到了我的问题的解决方案。实际上,没有什么可担心的。注销代码运行良好。Google 帐户在获得授权访问后首次登录时会请求权限,它不会请求权限它直接继续登录。如果我们注销谷歌帐户,它会请求许可,否则它不会

    【讨论】:

      猜你喜欢
      • 2019-02-06
      • 2017-10-01
      • 2016-03-21
      • 2021-01-18
      • 1970-01-01
      • 1970-01-01
      • 2017-07-21
      • 1970-01-01
      • 2017-07-06
      相关资源
      最近更新 更多