mirror of
https://github.com/arthurfiorette/axios-cache-interceptor.git
synced 2025-12-08 17:36:16 +00:00
This library is in beta and can have breaking changes until v1.
Not ready for production usage!
axios-cache-interceptor is a axios wrapper for caching and preventing unneeded requests
import axios from 'axios';
import { createCache, SessionCacheStorage } from 'axios-cache-interceptor';
// Any custom axios instance
const api = axios.create();
// Other axios instance with caching enabled
const cachedApi = createCache(api, {
// Store values on window.sessionStorage
storage: new SessionCacheStorage(),
// Use the max-age header to determine the cache expiration time
interpretHeader: true
});
// Make a simple request, with caching support, to the api
const { data } = await cachedApi.get('https://api.example.com/');
Installing
Axios is a peer dependency and must be installed separately.
# Npm
npm install --save axios axios-cache-interceptor
# Yarn
yarn add axios axios-cache-interceptor
Inspiration
This project is highly inspired by several projects, written entirely in typescript, supporting https headers and much more.
Take a look at some similar projects:
License
Licensed under the MIT. See LICENSE for more informations.
Contact
See my contact information on my github profile or open a new issue.
Languages
TypeScript
97.2%
JavaScript
1.5%
Shell
1.3%