Registry / database / express-idempotency-redis-adapter

express-idempotency-redis-adapter

JSON →
library1.0.8jsnpmunverified

Redis adapter for the express-idempotency middleware, enabling idempotency key storage in Redis. v1.0.8, stable, low update cadence. Key differentiator: integrates seamlessly with express-idempotency middleware and supports both connection config and existing Redis instances, with configurable TTL. Alternatives require custom Redis integration.

npm install express-idempotency-redis-adapter
INSTALL
IMPORT
SIG · EXPRESS-IDEMPOTENC
E
express-idempotency-redis-adapter
databasejavascriptv1.0.8
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

RedisAdapter (default)
import RedisAdapter from 'express-idempotency-redis-adapter'
const RedisAdapter = require('express-idempotency-redis-adapter')
Package exports a default export; CommonJS require works as shown in docs.
RedisAdapter (named)
import { RedisAdapter } from 'express-idempotency-redis-adapter'
Also exported as named export for convenience.
types (TypeScript)
import type { RedisAdapterOptions } from 'express-idempotency-redis-adapter'
Types included for options interface.

Shows how to import and use the Redis adapter with the express-idempotency middleware, including connection and TTL configuration.

import idempotency from 'express-idempotency'; import RedisAdapter from 'express-idempotency-redis-adapter'; import express from 'express'; const app = express(); const adapter = new RedisAdapter({ connectionConfig: { url: process.env.REDIS_URL ?? 'redis://localhost:6379' }, ttl: 3600 }); await adapter.connect(); app.use(idempotency({ dataAdapter: adapter })); app.listen(3000, () => console.log('Server running'));
Debug
Known issues
gotchaYou must provide either connectionConfig or connectionInstance, not both.
fix
Pass only one of the two options.
affects: >=1.0.0
gotchaThe adapter.connect() must be called before using the middleware.
fix
Ensure async connect() is awaited before app.use().
affects: >=1.0.0
gotchaTTL option is in seconds; default is 86400 (1 day).
fix
Set ttl to your desired value in seconds.
affects: >=1.0.0
gotchaThe adapter does not support Redis Cluster or Sentinel out of the box.
fix
Use connectionInstance with a pre-configured ioredis client if needed.
affects: >=1.0.0
Errors
Common errors & fixes
Error: RedisAdapter requires either connectionConfig or connectionInstance
Missing either option when instantiating the adapter.
fix
Pass connectionConfig (object with url) or connectionInstance (existing node-redis client).
TypeError: adapter.connect is not a function
Importing default incorrectly (non-function object).
fix
import RedisAdapter from 'express-idempotency-redis-adapter' (default export).
Error: connect ECONNREFUSED ::1:6379
Redis server not running or wrong host/port.
fix
Ensure Redis is running, or set REDIS_URL environment variable.
Error: The dataAdapter provided does not implement the required interface.
Passing something that is not a RedisAdapter instance.
fix
Use new RedisAdapter(options) and pass the instance.
Upgrade
Version history
1.0.8latest on npm
Audit
Dependencies
express-idempotencyrequiredpeer dependency; this adapter is meant to be used with the express-idempotency middleware
redisrequiredruntime dependency for connecting to Redis
Agent activity
4 hits · last 30 days
node
4
Resources
express-idempotency-redis-adapter — npm install express-idempotency-redis-adapter · libregistry