做一個後臺登錄身份驗證,並驗證管理員是否登錄,已登錄可以進行下一步操作,未登錄則跳轉回登錄頁面!
創建 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
已登錄顯示 可以調用退出方法