Skip to content

codeaholicguy/fastify-response-caching

Folders and files

NameName
Last commit message
Last commit date

Latest commit

476406d · Dec 5, 2022

History

22 Commits
Dec 5, 2022
Sep 17, 2020
Sep 18, 2020
Sep 17, 2020
Sep 17, 2020
Sep 17, 2020
Sep 17, 2020
Sep 17, 2020
Dec 5, 2022
Dec 5, 2022
Dec 5, 2022
Dec 5, 2022

Repository files navigation

fastify-response-caching

Node.js CI

fastify-response-caching is a plugin for the Fastify framework that provides mechanisms for caching response to reduce the server workload.

By default, this plugin implements caching by request URL (includes all query parameters) with the caching time (TTL) is 1 seconds. Besides, this plugin also supports additional caching condition such as request headers.

Example

This example shows using the plugin to cache response with default options.

const fastify = require('fastify')
const fastifyResponseCaching = require('fastify-response-caching')

fastify.register(fastifyResponseCaching)

This example shows using the plugin to cache response with customized caching time.

const fastify = require('fastify')
const fastifyResponseCaching = require('fastify-response-caching')

fastify.register(fastifyResponseCaching, {ttl: 5000})

This example shows using the plugin to cache response with customized caching conditions.

const fastify = require('fastify')
const fastifyResponseCaching = require('fastify-response-caching')

fastify.register(fastifyResponseCaching, {ttl: 5000, headers: ['x-request-agent']})

API

Options

fastify-response-caching accepts the options object:

{
  ttl: <Number>
  additionalCondition: {
    headers: <Array<String>>
  }
}
  • ttl (Default: 1000): a value, in milliseconds, for the lifetime of the response cache.
  • additionalCondition (Default: undefined): a configuration of additional condition for caching.
  • additionalCondition.headers (Default: []): a list of string, headers that you want to include in the caching condition.

License

MIT License