CodeReady
Quay lại danh sách case study

Xử lý lỗi API toàn cục bằng Interceptor

Chuẩn hóa việc bắt lỗi token hết hạn và hiển thị thông báo lỗi khi gọi API.

Bối cảnh

Ứng dụng web gọi rất nhiều REST API khác nhau và cần xử lý chung tình trạng lỗi 401 Unauthorized khi token hết hạn.

Vấn đề cần xử lý

Code xử lý lỗi bị lặp lại ở mọi nơi gọi fetch hoặc axios, dẫn đến khó bảo trì và trải nghiệm người dùng không đồng nhất.

Hướng xử lý đề xuất

Sử dụng Axios Interceptors để bắt tất cả các response lỗi 401 và tự động chuyển hướng về trang đăng nhập hoặc gọi refresh token.

Câu trả lời mẫu khi phỏng vấn

Em đề xuất cấu hình một instance chung của Axios và sử dụng response interceptor. Khi nhận mã lỗi 401, hệ thống sẽ tự động xử lý refresh token hoặc đẩy user về màn hình login thay vì bắt lỗi thủ công ở từng component.

Trade-off

Tập trung logic xử lý lỗi vào một nơi giúp code sạch hơn, nhưng cần cẩn thận để tránh vòng lặp vô hạn khi gọi refresh token lỗi.

Kết quả kỳ vọng

Giảm lượng code trùng lặp và mang lại trải nghiệm mượt mà khi phiên làm việc của người dùng hết hạn.

Bài học khi trả lời phỏng vấn

Hiểu cách áp dụng Design Pattern vào việc quản lý network request trong dự án thực tế.