Laravel 自定義使用auth做登陸身份認證

做一個後臺登錄身份驗證,並驗證管理員是否登錄,已登錄可以進行下一步操作,未登錄則跳轉回登錄頁面!

創建 admin 表用於存放後臺管理員,要實現管理員的單獨登錄

表結構:

CREATE TABLE `admin` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增id',
  `name` varchar(100) DEFAULT NULL COMMENT '賬號名稱',
  `password` varchar(100) DEFAULT NULL COMMENT '密碼',
  `addtime` int(11) DEFAULT NULL COMMENT '添加時間',
  `remember_token` varchar(100) DEFAULT NULL COMMENT 'auth認證使用的令牌',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='管理員表';

配置 config/auth.php 配置文件:

         

        

創建Admin.php

在app下創建Admin.php文件

配置與app/User.php基本相同

        

視圖文件

Login.blade.php文件內容

        

web.php路由文件

//登錄
Route::match(['POST', 'GET'], '/admin/login', 'AdminLoginController@login');

控制器登錄方法

        

模型層登錄邏輯處理 使用其中被註釋的方法添加測試用的管理員賬號密碼

        

web.php退出路由

//退出
Route::get('Logout', 'AdminLoginController@logout');

控制器退出方法

        

模型層退出業務處理

        

Auth退出,並清除掉自己設置的session

到這裏,Auth登錄、退出已經完成了!

下一步就是操作其他方法的時候驗證是否登錄的操作了

 

增加中間件驗證

App/Http/Middleware/RedirectIfAuthenticated.php

       

修改app/Http/Kernel.php   增加中間件驗證 在請求控制器之前首先驗證中間件

       

路由 修改 web.php

       

未登錄,如果訪問,則跳轉回login

       

已登錄顯示  可以調用退出方法

       

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章