Middleware trong Laravel – lợi hại như thế nào
![middleware auth trong laravel](https://blogcongnghe.tronghao.site/wp-content/uploads/2020/02/middleware.jpg)
Mình đã có 2 bài viết bước đầu sử dụng Laravel, mọi thứ về route trong laravel bạn có thể đọc để tìm hiểu rõ trước khi đọc bài viết này nhé. Bài trước mình đã giới thiệu các bạn controller và view trong laravel. Nhưng cần một thuật ngữ nữa là middleware để ngăn chặn các truy cập controller trái phép, cùng tìm hiểu nhé.
Contents
1. Middleware là gì?
Middleware được laravel tạo ra để ngăn chặn các truy cập không được phép, nó thường được sử dụng cho các việc xác thực người dùng, ngăn chặn người dùng truy cập vào các quyền không được phép! Có thể nói Middleware là người bảo vệ cho các url của bạn.
![middleware trong laravel là gì](https://miro.medium.com/max/679/1*4nJJgPOnlJwD6s-7ygqgTg.jpeg)
2. Các bước sử dụng Middleware
2.1 Tạo Middleware trong Laravel
Bạn tạo middleware bằng composer như sau:
php artisan make:middleware tenCuaMiddleware
Sau khi tạo bạn sẽ viết code trong hàm handle nằm tại app\Http\Middleware\FileVuaTao.
![middleware trong laravel là gì](https://blogcongnghe.tronghao.site/wp-content/uploads/2020/02/13-2.png)
Nếu không được phép thì chuyển đến url khác ngược lại thì cho vào, hiểu tạm ý nghĩa như vậy nhá. Tạm thời xong việc tạo nha!
Nếu cần tham số thì hàm handle sẽ được viết như sau:
![middleware login trong laravel](https://blogcongnghe.tronghao.site/wp-content/uploads/2020/02/17.png)
2.2 Khai báo Middleware
Bạn sẽ khai báo Middleware vừa tạo trong file Kernel.php nằm tại đường dẫn app\Http
![sử dụng middleware trong laravel](https://blogcongnghe.tronghao.site/wp-content/uploads/2020/02/14-1024x451.png)
tại thuộc tính routeMiddleware bạn khai báo thêm một giá trị nữa: ‘TenMiddleware’ => duongDanClass. Như vậy là xong!
2.3 Sử dụng Middleware
Mình sẽ sử dụng Middleware tại các route nhé!
![sử dụng middleware trong laravel](https://blogcongnghe.tronghao.site/wp-content/uploads/2020/02/15.png)
Đó là khi sử dụng đơn route; first, second là tên các middleware mình khai báo ở file Kernel.php nhé!
Khi sử dụng group thì như thế này, và mình thì thường xài cách đầu tiên nhe!
![sử dụng middleware](https://blogcongnghe.tronghao.site/wp-content/uploads/2020/02/16-2-1024x348.png)
Thông thường middleware được sử dụng cho các đăng nhập, Laravel có tạo sẵn cho chúng ta Authentication có sẵn đăng nhập, đăng ký, reset password mình cũng đã có viết bài chia sẻ về Authentication này.
Kết Luận
Mình đã hướng dẫn các bạn kiến thức về sử dụng middleware trong laravel. Các bạn có thể xem thêm về cách sử dụng request trong laravel nhé.