[*NEW*] Axios Refresh Tokens using Interceptors.
A simple and straightforward interceptor to check token validity, to generate new access and refresh token before the actual request in axios if the existing access token is already expired.

npm install axios-jwtoken-refresher
Please read Axios libary, Refresh tokens and Access tokens if you’are not familiar with these libraries.
Installation:
Run npm install axios-jwtoken-refresher
Usage:
Add to your main project file.
import tokenRefresher from 'axios-jwtoken-refresher'
import axios from 'axios'
axios.create({
baseURL: 'https://api.example.com',
})
//Get where your initial refresh token persist.
const initialRefreshToken = '{provide initial refresh token}'
//Provide your refresh token endpoint.
const refreshTokenEndpoint = '/api/sample/token'
//Provide your own access token object result path.
const accessTokenResultPath = '/response/data/accessToken'
//Provide your own refresh token object result path.
const refreshTokenResultPath = '/response/data/refreshToken'
//Provide your own header options. (Optional)
const headerOptions = {
authPrefix: "Authorization",
bearerPrefix: "Bearer"
};
//To interecept and check token validity then request on refresh token endpoint if current access token is already expired!
tokenRefresher.interceptRequest(axios, {
initialRefreshToken: initialRefreshToken,
refreshTokenEndpoint: refreshTokenEndpoint,
accessTokenResultPath: accessTokenResultPath,
refreshTokenResultPath: refreshTokenResultPath,
headerOptions: headerOptions
});
//You can also access the get token method and set to axios instance manually. (Optional)
const tokens = tokenRefresher.getCurrentTokens();
axios.defaults.headers.common["Authorization"] = `Bearer ${tokens.accessToken}`;
Npm:
npmjs.com/package/axios-jwtoken-refresher
Looking for a JOB? Signup @ jobbhy and be notified!
https://jobbhy.com
Want to post a JOB as employer? Contact and be one us!
https://www.jobbhy.com/#/contactus
Read more about jobbhy:
Jobbhy — Smart Hiring | Job Vacancies | Recruitment
https://joever-monceda.medium.com/jobbhy-smart-hiring-job-vacancies-recruitment-f9fc9dad113b
Facebook:
https://www.facebook.com/jobbhy
LinkedIn:
https://www.linkedin.com/company/jobbhy-co-ltd
Twitter:
https://twitter.com/Jobbhy_
JSanitizer (Configurable sanitizer for XML and JSON.)
https://joever-monceda.medium.com/jsanitizer-nuget-library-5d2cdedb435d