# node 中使用 redis
首先需要安装 redis 库,使用命令:npm i redis --save; 进行安装,封装 redis 使用:
'../config/db' 存储的是 redis 的配置:
const env = process.env.NODE_ENV //环境变量
// 配置
let REDIS_CONF
if(env === 'dev') {
// dedis
REDIS_CONF = {
port: 6379,
host: '127.0.0.1'
}
}
if(env === 'production') {
// dedis
REDIS_CONF = {
port: 6379,
host: '127.0.0.1'
}
}
module.exports = {
REDIS_CONF
}
const redis = require('redis')
const { REDIS_CONF } = require('../config/db')
// 创建客户端
const redisClient = redis.createClient(REDIS_CONF.port, REDIS_CONF.host)
// 监听 redis 连接异常
redisClient.on('error', err => {
console.error(err)
})
// 设置值
function set(key, val) {
if(typeof val === 'object') {
val = JSON.stringify(val)
}
console.log(key, val)
redisClient.set(key, val, redis.print)
}
// 获取值
function get(key) {
return new Promise((resolve, reject) => {
redisClient.get(key, (err, val) => {
if(err) {
console.error(err)
reject(err)
return
}
if(val === null) {
resolve(null)
return
}
// 如果是json对象进行解析
try{
resolve(
JSON.parse(val)
)
} catch(ex) {
// 如果不是json对象,直接返回
resolve(val)
}
})
})
}
module.exports = {
set,
get
}
阅读量: