express-idempotency-redis-adapter v1.0.8
Use Redis to store data related to the express idempotency middleware.
Redis adapter for express-idempotency
Allow the express-idempotency to store data in a Redis data store.
This is a Node.js module designed to work with Express, available through the NPM registry.
Features
- Provides adapter to support Redis
- Allows the use of time-to-live (TTL) indexes to manage data
Getting started
Install the dependency.
$ npm install express-idempotency-redis-adapterIntegrate the data adapter during the middleware initialization.
const idempotency = require("express-idempotency");
const RedisAdapter = require("express-idempotency-redis-adapter").default;
// New Redis Adapter that will be used by the idempotency middleware
const adapter = new RedisAdapter({
connectionConfig: { url: "redis://localhost:6379" },
});
adapter.connect().catch((error) => {
throw error;
});
// Add the idempotency middleware by specifying the use of the redis adapter
app.use(
idempotency.idempotency({
dataAdapter: adapter,
})
);The data adapter will take care of everything required to store data from the express idempotency middleware.
Options
You can optionally configure the data adapter by providing options during initialization.
| Property | Mandatory | Default | Description |
|---|---|---|---|
| ttl | false | 86400 | Time to live, in seconds. It will remove a resource after a certain period of time. Default is 86400 (1 day) |
| connectionConfig | false | Node-Redis client configuration settings. See: https://github.com/redis/node-redis/blob/master/docs/client-configuration.md | |
| connectionInstance | false | Existing instance of Node-Redis |
Note: You can only pass either
connectionConfigorconnectionInstance
Redis configuration
The data adapter can manage connection itself by providing a Redis configuration. It will use the node-redis package.
You might want to manage connection externally by having a singleton client. In this case, you can provide an existing instance of node-redis to the data adapter.
Time-to-live (TTL)
The data adapter will create TTL indexes to purge data from collection after a certain period of time. By default, the ttl is 1 day but it is configurable.
License
The source code of this project is distributed under the MIT License.