Session Storage Adapter for Redis
This package implements the SessionStorage interface that works with an instance of Redis.
You can create an instance of RedisSessionStorage in several ways:
Using a connection URL
import {shopifyApp} from '@shopify/shopify-app-express';
import {RedisSessionStorage} from '@shopify/shopify-app-session-storage-redis';
const shopify = shopifyApp({
sessionStorage: new RedisSessionStorage(
'redis://username:password@host/database',
),
});
Using a URL object
const shopify = shopifyApp({
sessionStorage: new RedisSessionStorage(
new URL('redis://username:password@host/database'),
),
});
Using credential components
const shopify = shopifyApp({
sessionStorage: RedisSessionStorage.withCredentials(
'host.com',
'thedatabase',
'username',
'password',
),
});
Using a RedisClient instance
[!NOTE]
Remember that RedisSessionStorage will connect to the database, but won't disconnect from it.
If you need to restart the connection, you'll need to manually connect again for the storage to continue working.
import {RedisClientOptions, createClient} from 'redis';
const client = createClient({url: 'redis://username:password@host/database'});
const shopify = shopifyApp({
sessionStorage: new RedisSessionStorage(client),
});
If you prefer to use your own implementation of a session storage mechanism that is compatible with the @shopify/shopify-app-express package, see the implementing session storage guide.