请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

新版本 redis 封装的问题

老师课程中的 reids 是 2.x 的版本, 现在已经是 4.x 的版本了, redis 在新版本中进行了大的重构, 自己在这块儿折腾了很久, 想看看老师是如何封装的? 顺便学习下!👀

正在回答

2回答

双越 2022-03-19 21:29:07

好~

这个我后面再升级一个视频讲解一下吧。

0 回复 有任何疑惑可以回复我~
  • 提问者 FunnyCoder24 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2022-03-19 21:34:21
  • ok_Wei #2
    请问老师有没有更优的封装方式
    const redis = require('redis')
    
    const { REDIS_CONF } = require('../conf/db'); 
    
    //  REDIS_CONF = {
    
    //  url: 'redis://127.0.0.1:6379'
    
    //  };
    
    
    
    const client = redis.createClient(REDIS_CONF)
    
    
    
    const setRedis = async (key, value) => {
    
      await client.connect();
    
      if (typeof value === 'object') {
    
        value = JSON.stringify(value)
    
      }
    
      await client.set(key, value)
    
      await client.quit()
    
      return true
    
    }
    
    
    
    const getRedis = async (key) => {
    
      await client.connect()
    
      const value = await client.get(key)
    
      await client.quit();
    
      if (!value) {
    
        return null
    
      }
    
      try {
    
        return JSON.parse(value)
    
      } catch (error) {
    
        return value
    
      }
    
    }
    
    
    
    module.exports = {
    
      setRedis,
    
      getRedis
    
    }
    回复 有任何疑惑可以回复我~ 2022-04-21 13:31:23
ok_Wei 2022-04-21 20:59:56

const redis = require('redis')

const { REDIS_CONF } = require('../conf/db'); 

//  REDIS_CONF = {

//  url: 'redis://127.0.0.1:6379'

//  };


const client = redis.createClient(REDIS_CONF)


const setRedis = async (key, value) => {

  await client.connect();

  if (typeof value === 'object') {

    value = JSON.stringify(value)

  }

  await client.set(key, value)

  await client.quit()

  return true

}


const getRedis = async (key) => {

  await client.connect()

  const value = await client.get(key)

  await client.quit();

  if (!value) {

    return null

  }

  try {

    return JSON.parse(value)

  } catch (error) {

    return value

  }

}


module.exports = {

  setRedis,

  getRedis

}

// 已验证可行



0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信