redis.mjs 664 B

1234567891011121314151617181920212223242526
  1. import UserSessionsRedis from '../../../../app/src/Features/User/UserSessionsRedis.mjs'
  2. const rclient = UserSessionsRedis.client()
  3. async function getUserSessions(user) {
  4. return await rclient.smembers(UserSessionsRedis.sessionSetKey(user))
  5. }
  6. async function clearUserSessions(user) {
  7. const sessionSetKey = UserSessionsRedis.sessionSetKey(user)
  8. const sessionKeys = await rclient.smembers(sessionSetKey)
  9. if (sessionKeys.length === 0) {
  10. return
  11. }
  12. for (const k of sessionKeys) {
  13. await rclient.del(k)
  14. }
  15. await rclient.srem(sessionSetKey, sessionKeys)
  16. }
  17. const RedisHelper = {
  18. getUserSessions,
  19. clearUserSessions,
  20. }
  21. export default RedisHelper