A fetch wrapper that allows you to respect HTTP caching strategies on non-browser environments with a key-value cache implementation. It follows the HTTP Caching and Conditional Requests standards.
yarn add fetchache
import { fetchFactory } from 'fetchache'
import { fetch, Response } from 'some-fetch-impl'
// We recommend using `@whatwg-node/fetch`
const someCacheImpl = {
get: async key => {
// Get the cached value from your cache implementation
},
set: async (key, value) => {
// Set the cached value to your cache implementation
}
}
const fetchWithCache = fetchFactory({
fetch,
Response,
cache
})
// Then you can use it like a normal fetch
const response = await fetchWithCache('https://example.com')