Cache-control header utility that parses human readable time strings into seconds.
Time based values use Template Literal Types to help avoid passing invalid time string formats.
npm i pretty-cache-header
import { cacheHeader } from 'pretty-cache-header';
return new Response(..., {
headers: {
// sets cache control header to "public, max-age=604800, stale-while-revalidate=31536000"
'Cache-Control': cacheHeader({
public: true,
maxAge: '1week',
staleWhileRevalidate: '1year'
})
}
})
Any number followed by a timestring keyword:
ms
,milli
,millisecond
,milliseconds
- will parse to millisecondss
,sec
,secs
,second
,seconds
- will parse to secondsm
,min
,mins
,minute
,minutes
- will parse to minutesh
,hr
,hrs
,hour
,hours
- will parse to hoursd
,day
,days
- will parse to daysw
,week
,weeks
- will parse to weeksmon
,mth
,mths
,month
,months
- will parse to monthsy
,yr
,yrs
,year
,years
- will parse to years