koa-cache-control
A simple method for managing cache control headers from your application. It also tries to provide a simple set of rules for common use cases such as setting 'max-age=0' when 'no-cache' is present by default.Example
Configuring noCache easily:app.use(cacheControl({
noCache: true
}));
Creates a cache-control header of no-cache, max-age=0
Usage
To start using cacheControl, just use the middleware in your application:app.use(cacheControl());
Default Cache Headers
When initialising the middleware you can set default options when you use it in your application:app.use(cacheControl({
maxAge: 5
}));
Overriding Defaults
Just set the cacheControl object after the cacheControl() middleware is loaded on the request context:app.use(function *(next){
this.cacheControl = {
maxAge: 60
};
yield next;
});
This is useful in error conditions where you can setup cache headers before and after a request is processed:
app.use(function *(next){
this.cacheControl = {
maxAge: 60
};
try {
yield next;
} catch (err) {
this.cacheControl = {
maxAge: 5
};
}
});