新版本 redis 封装的问题

来源:7-12 nodejs连接redis-封装工具函数

FunnyCoder24

2022-03-19

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

写回答

2回答

双越

2022-03-19

好~

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

0
2
ok_Wei
请问老师有没有更优的封装方式 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
共2条回复

ok_Wei

2022-04-21

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
0

Node.js+Express+Koa2+Nest.js 开发服务端

从入门到实战,一站式掌握 Node.js+Express+Koa2

4051 学习 · 2006 问题

查看课程