我试图了解laravel如何处理身份验证请求,以便能够编写自己的身份验证方法,该方法允许我在进行身份验证之前检查来自多个表的数据(基本上,我需要检查一些列了解用户是否可以登录。
我实际上对警卫,中间件,提供程序和驱动程序之间的关系感到困惑。
有人可以解释一下登录请求的生命周期吗?
谢谢
编辑:我正在使用laravel 5.7,可以使用make:auth
答案 0 :(得分:1)
要进行自定义身份验证,请按照以下步骤操作
1.go进入routes / web.php并获取获取路径以处理登录视图,并发布登录路径以处理登录逻辑
Route::get('login','LoginController@show')
Route::post('login','LoginController@login')
2。创建一个名为LoginController的控制器
php artisan make:controller LoginController
4.inside LoginController在内部创建了一个名为login的函数来处理这样的登录逻辑
public function login(){
$input = $this->validate(request(),['username'=>'required','password'=>'required']);
$model = CustomUsersModel::where('username',$input['username'])
->where('password',bcrypt($input['password']))->first();
if($model){
//user exist and valid login information
auth()->login($model);//login user via model
//now user loggedin
}
//handle wrong login information
}