Documentation
GitHubaxios-token-refresh
axios-token-refresh là một tiện ích nhẹ để xử lý logic làm mới token trong Axios. Nó tích hợp mượt mà với Axios interceptors để tự động thử lại các request sau khi token hết hạn. Hoàn hảo cho các luồng xác thực trong ứng dụng web hiện đại.
Cài đặt
npm install axios-token-refresh
Cách sử dụng cơ bản
import axios from 'axios';
import registerAxiosTokenRefresh from 'axios-token-refresh';
const api = axios.create({ baseURL: '/api' });
registerAxiosTokenRefresh(api, {
refreshRequest: async (error) => {
// Call your refresh token API
const res = await axios.post('/auth/refresh', { token: 'refresh-token' });
// Attach new accessToken to header
error.config.headers['Authorization'] = 'Bearer ' + res.data.accessToken;
return api.request(error.config);
},
});
Tùy chọn API
- refreshRequest: (bắt buộc) Hàm xử lý làm mới token, phải trả về một Promise.
- statusCodes: (tùy chọn) Danh sách mã trạng thái kích hoạt làm mới (mặc định: [401]).
- shouldRetry: (tùy chọn) Hàm tùy chỉnh để xác định có nên làm mới hay không.
- retryTimes: (tùy chọn) Số lần thử lại (mặc định: 1).
- onRetry: (tùy chọn) Callback trước mỗi lần thử làm mới.