node连接redis的方法实现

 更新时间:2023年02月27日 10:48:03   作者:小二李  
本文主要介绍了node连接redis的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

本篇文章介绍nodejs连接redis,以及redis的基本使用。

安装redis。

cnpm i redis -S

封装redis配置信息。

config/db.js

// redis 配置
let REDIS_CONF
// 开发环境
if (env === 'dev') {
  REDIS_CONF = {
    port: 6639,
    host: '127.0.0.1'
  }
}
// 生产环境
if (env === 'production') {
 REDIS_CONF = {
    port: 6639,
    host: '127.0.0.1'
  }
}
// 导出配置
module.exports = {
  MYSQL_CONF,
  REDIS_CONF
}

将存储和读取redis数据封装成工具类。

db/redis.js

const redis = require('redis')
const {REDIS_CONF} = require('../config/db')

// 创建连接终端
const redisClient = redis.createClient(REDIS_CONF.port,REDIS_CONF.host)

// 监听存储过程出错
redisClient.on('error', err => {
  console.log(err)
})

// 存储值
function set (key, val) {
  if (typeof val === 'object') {
    val = JSON.stringify(val)
  }
  redisClient.set(key,val, redis.print)
}

// 读取值
function get (key) {
  const promise = new Promise((resolve, reject) => {
    redisClient.get(key, (err, val) => {
      // 出错
      if (err) {
        reject(err)
        return
      }
      // 值为空
      if (val == null) {
        resolve(null)
        return
      }
      // 如果是json则转为对象,否则直接返回设置的值
      try {
        resolve(JSON.parse(val))
      } catch (ex) {
        resolve(val)
      }
    })
  })
  return promise
}

module.exports = {
  set,
  get
}

到此这篇关于node连接redis的方法实现的文章就介绍到这了,更多相关node连接redis内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Node.js中调用mysql存储过程示例

    Node.js中调用mysql存储过程示例

    这篇文章主要介绍了Node.js中调用mysql存储过程示例,本文在windows环境测试通过,本文一并给出了创建数据库、录入数据、创建存储过程、调用存储过程等例子,需要的朋友可以参考下
    2014-12-12
  • 如何能分清npm cnpm npx nvm

    如何能分清npm cnpm npx nvm

    这篇文章主要介绍了如何能分清npm cnpm npx nvm,本文就详细的来介绍一下区别,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • puppeteer实现html截图的示例代码

    puppeteer实现html截图的示例代码

    通过Puppeteer的提供的api直接控制Chrome模拟大部分用户操作来进行UI Test或者作为爬虫访问页面来收集数据,这篇文章主要介绍了puppeteer实现截图的示例代码,感兴趣的可以了解一下
    2019-01-01
  • nodejs对express中next函数的一些理解

    nodejs对express中next函数的一些理解

    这篇文章主要介绍了nodejs对express中next函数的一些理解,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • Thinkjs3新手入门之添加一个新的页面

    Thinkjs3新手入门之添加一个新的页面

    Thinkjs 是一个快速、简单的基于MVC和面向对象的轻量级Node.js开发框架,下面这篇文章主要给大家介绍了关于Thinkjs3新手入门之添加一个新的页面的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-12-12
  • node实现生成带参数的小程序二维码并保存到本地功能示例

    node实现生成带参数的小程序二维码并保存到本地功能示例

    这篇文章主要介绍了node实现生成带参数的小程序二维码并保存到本地功能,涉及nodejs模块引用、接口调用、编码转换、图片生成等相关操作技巧,需要的朋友可以参考下
    2018-12-12
  • Node.js包管理器Yarn的入门介绍与安装

    Node.js包管理器Yarn的入门介绍与安装

    大家都知道在yarn发布之前,所有Nodejs开发者用的都是npm包管理工具,而npm工具存在挺多难以忍受的诟病,包括安装速度慢、每次都要在线重新安装等问题,而yarn也是为了解决npm当前所存在的问题而出现的。本文给大家介绍了包管理器Yarn,以及安装方法。下面来一起看看。
    2016-10-10
  • 你一定会收藏的Nodejs代码片段

    你一定会收藏的Nodejs代码片段

    Nodejs值得收集的代码片段,大家可以收藏起来,运用到之后的工作中,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • 关于commander.js使用及源码分析

    关于commander.js使用及源码分析

    这篇文章主要介绍了关于commander.js使用及源码分析,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Node.js爬虫如何获取天气和每日问候详解

    Node.js爬虫如何获取天气和每日问候详解

    这篇文章主要给大家介绍了关于Node.js爬虫如何获取天气和每日问候的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Node.js爬虫具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08

最新评论