Laravel's Hash::check() 和 Auth::try() 总是返回 false



密码在注册时被散列。

$auth = Hash::check($request->get('password'), $user->password);
dd($auth);

我仔细检查了电子邮件输入,密码输入和哈希,它们被正确输出,但是,Hash::check((和Auth:try(( dd输出都是错误的

$credentials = $request->only('email', 'password');
dd(Auth::attempt($credentials));

我正在有宅基地的当地环境中测试它,使用失眠来发布和测试。Laravel 6 和 PHP 7.3

我在 api 路由文件中的路由:

Route::post('/login','UserController@login');

路由正在工作,我已经测试了输出请求数据,它们是对的。

谢谢。

我的User Model类中有一个散列密码的方法:

public function setPasswordAttribute($value){
$this->attributes['password'] = Hash::make($value);
}

当我在 Laravel 的 UI 或种子中注册一个新用户时,我再次对其进行哈希处理。 删除了手动哈希,现在一切正常。

最新更新