http-cacher

1.0.0 • Public • Published

http-cacher

Simple HTTP cache middleware for express js applications

Usage

If you want to apply for all requests...

const httpCacher = require('http-cacher');
app.use(httpCacher({ maxAge: 300})); // 300 seconds

You can also write the above example like this..

const httpCacher = require('http-cacher');
app.use(httpCacher({ maxAge: '300s'})); // 300 seconds

If you want to apply for specific end-point...

const httpCacher = require('http-cacher');
app.use('/api/v1', httpCacher({ maxAge: '1d'}));

If you want to apply for specific http method

const httpCacher = require('http-cacher');
app.get('/api/v1/books', httpCacher({ maxAge: '1d'}), (req, res, next) => {
    res.json({
        books: [
            'Eloquent JavaScript: A Modern Introduction to Programming',
            'JavaScript: The Good Parts',
            'JavaScript for Kids: A Playful Introduction to Programming'
        ]
    });
});

If you want to apply headers conditionally... (You can pass custom function as second argument)

const httpCacher = require('http-cacher');
const zeroCacheAdmin = (req) => {
  if (req.tokenData?.role === ADMIN) {
    return false;
  }

  return true;
};

app.use(httpCacher({ maxAge: '1d'}, zeroCacheAdmin));

If you want to apply set cache as private

const httpCacher = require('http-cacher');
app.use(httpCacher({ maxAge: '1m', isPrivate: true})); // 1 minute

Package Sidebar

Install

npm i http-cacher

Weekly Downloads

0

Version

1.0.0

License

MIT

Unpacked Size

4.38 kB

Total Files

5

Last publish

Collaborators

  • shivarajnaidu