Hướng dẫn cài đặt middleware trong laravel, Hướng dẫn chi tiết cách sử dụng middleware trong laravel
Tóm Tắt
Bước 1 : Cài đặt middleware
Để cài đặt middleware ta chạy lệnh sau
php artisan make:middleware middleware_name
Ví dụ ta tạo middleware có tên là CheckLogin, sau khi chạy lệnh thì file CheckLogin.php sẽ được tạo tự động trong thư mục App\Http\Middleware
Bước 2 : Định danh cho middleware
+ Mở file Kernel.php trong thư mục App\Http .Tại mục $routeMiddleware ta thêm dòng CheckLogin như hình
Lưu ý : Để sử dụng được session trong laravel ta cần phải mở file App\Config\session.php
Chuyển expire_on_close từ false thành true
+ Lúc này trong hàm hàm xử lý login ta tạo ra 1 session có key là email. Khi ứng dụng chạy vào hàm thì session được khởi tạo.
+ Trong file CheckLogin.php ta kiểm tra điều kiện nếu tồn tại session đã khai báo thì cho chạy tiếp còn không sẽ chuyển hướng trở lại trang login
Hàm xử lý login trong file LoginController.php
Hàm kiểm tra session trong file CheckLogin.php
+ Bước 3 : Sử dụng middleware
Ta sử dụng middleware ở route, chỗ nào cần kiểm tra đăng nhập thì ta gắn điều kiện middleware như hình dưới
Lúc này ta tạo 1 controller admin để làm ví dụ, Khi truy cập vào route /admin ứng dụng sẽ chạy qua hàm middleware, nếu thỏa mã điều kiện là tồn tại session như chúng ta khai báo ở bước 2 thì sẽ chạy tiếp vào hàm index trong AdminController
Trong hàm index ta in ra dòng Đã đăng nhập để làm ví dụ
Trình duyệt sẽ in ra dòng như trên
+ Để chuyên nghiệp hơp thì trong file CheckLogin ta sẽ return về route login kèm theo 1 session và hiển thị lỗi chưa đăng nhập ở trang login
Trong file CheckLogin
Trong file view login ta kiểm tra session nếu có lỗi thì hiển thị lỗi
Kết quả như hinh
Tổng kết : Bài viết này mình đã hướng dẫn chi tiết cách cài đặt middleware, cách định danh midleware, cách khai bào middleware trong route, cách viết hàm kiểm tra trong file middleware và cách trả về lỗi nếu không thỏa mãn điều kiện middleware, cách hiển thị lỗi middleware trả về trên file view. chúc bạn thành công