奇怪 Laravel 总是尝试验证 Return False

Weird Laravel Auth Attempt Always Return False

我在使用自定义 LoginController 时遇到了这个烦人的错误,其中 Auth::attempt 总是 return 错误。我尝试了在线发布的所有解决方案,但没有任何效果,知道这个 Laravel6 应用程序发生了什么吗?

 public function authenticate(Request $request) .......
    $ubersmith = ///external api call to get email
    if (Auth::attempt(['email' => $ubersmith->data->email, 'password' => $request->input('password')])) {
        // Authentication passed...
        var_dump('login');
        return redirect('/');
    }
    $user = \App\User::create([
        'password' => Hash::make($request->input('password')),
        'email' => $ubersmith->data->email,
        'name' => $ubersmith->data->fullname
    ]);
    Auth::login($user);
    var_dump($user);
    return redirect('/2');
}

看你的代码,好像没什么问题。您可以尝试调试它,例如放置 dd($ubersmith->data->email);dd($request->input('password')); 来检查您是否传递了正确的数据。

另一种可能是您输入的密码不正确。你可以尝试做:

dd(Hash::make($request->input('password')));

然后使用此值更新您的密码,然后再次尝试进行身份验证。