[Laravel Series] 21. Kiểm soát lỗi trong Laravel

Trong Laravel tất cả các loại trừ đều được kiểm soát bởi lớp appExceptionsHandler. Class này bao gồm 2 phương thức report và render.

Phương thức report()

Phương thức report được sử dụng để report hoặc lưu log những ngoại lệ. Nó cũng được sử dụng để gửi log của các ngoại lệ tới service bên trong như là Sentry, Bugsnag..v…v…

>>> Xem full Series về Laravel Framework <<<

Phương thức render()

Phương thức render() được sử dụng để hoàn trả một ngoại lệ vào một phản hồi HTTP mà sẽ được gửi lại trình duyệt.

Bên cạnh 2 phương thức này thì lớp appExceptionsHandler cũng bao gồm một thuộc tính quan trọng gọi là “$dontReport”. Thuộc tính này sẽ cần một mảng của kiểu ngoại lệ không được lưu log lại.

Các ngoại lệ HTTP

Nhiều exception miêu tả những code HTTP lỗi như là 404, 500..v..v… Để tạo ra những phản hồi này ở bất cứ đâu trong ứng dụng của bạn, bạn có thể dùng phương thức abort() như sau:

Trang lỗi tùy biến

Laravel giúp chúng ta làm công việc này cực kì dễ dàng để sử dụng các trang lỗi cho mỗi code lỗi riêng biệt. Ví dụ, nếu bạn muốn thiết kế những trang tùy biến cho lỗi 404, bạn có thể tạo một view tại resources/views/errors/404.blade.php. Bằng cách tương tự, nếu bạn muốn thiết kế trang lỗi cho lỗi 500, nó cần được lưu trong resources/views/errors/500.blade.php.

Lời khuyên: Lập trình PHP là kiến thức bắt buộc phải có để học Laravel

Ví dụ

Bước 1 – Thêm đoạn sau vào app/Http/routes.php.

Bước 2 – Tạo một file View gọi là resources/views/errors/404.blade.php và sao chép code sau vào file đó.

Bước 3 – Vào URL sau để test event

http://localhost:8000/error

Bước 4 – Sau khi vào URL, bạn sẽ thấy như sau:

404error

Leave a comment

Your email address will not be published. Required fields are marked *