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ế.