【问题标题】:Laravel authentication lifecycleLaravel 身份验证生命周期
【发布时间】:2019-03-06 21:43:08
【问题描述】:

我试图了解 laravel 如何处理身份验证请求,以便能够编写我自己的身份验证方法,允许我在身份验证之前检查多个表中的数据(基本上有一些列我需要检查了解用户是否能够登录)。
实际上,我对守卫、中间件、提供者和驱动程序之间的关系感到很困惑。

有人可以解释一下登录请求的生命周期吗? 谢谢

编辑:我正在使用 laravel 5.7,标准 Auth 脚手架,可使用 make:auth

【问题讨论】:

  • 取决于哪个版本,和包(Auth或Access)等。没有唯一的一种方式。

标签: laravel authentication


【解决方案1】:

要进行自定义身份验证,请按照以下步骤操作

1.转到 routes/web.php 并创建一个 get 路由来处理登录视图和发布登录路由来处理登录逻辑

Route::get('login','LoginController@show')
Route::post('login','LoginController@login')

2。制作一个名为 LoginController 的控制器

php artisan make:controller LoginController

4.在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

}

【讨论】:

  • 我觉得自己太愚蠢了,我以前没有考虑过这个……这并不能解释生命周期,但对我的问题有很大帮助!谢谢
猜你喜欢
  • 2011-07-09
  • 2016-05-03
  • 1970-01-01
  • 2015-04-29
  • 2016-05-16
  • 2016-08-03
  • 2010-10-27
相关资源
最近更新 更多