Redis 的 HSET
與 HGET
可設定 Hash 在 Key 內,亦可使用 Node Redis 的 hset()
與 hget()
。
Version
macOS Catalina 10.15.3
WebStorm 2019.3.4
Redis 5.0.6
Node Redis 2.8.0
Command
$ hset book price 100
$ hget book price
- 使用
HSET
設定book
key 與price
field - 使用
GET
讀取book
key 與price
field
Node
import { createClient } from 'redis'
import { promisify } from 'util'
let myRedis = createClient({
host: 'localhost',
port: 6379
})
let redisHset = promisify(myRedis.hset).bind(myRedis)
let redisHget = promisify(myRedis.hget).bind(myRedis)
redisHset('book', 'price', 100)
redisHget('book', 'price').then(console.log)
第 9 行
let redisHset = promisify(myRedis.hset).bind(myRedis)
let redisHget = promisify(myRedis.hget).bind(myRedis)
使用 promisify()
將 hset()
與 hget()
從 callback 轉成回傳 promise。
12 行
redisHset('book', 'price', 100)
使用 redisHset()
寫入 key 與 field。
13 行
redisHget('book', 'price').then(console.log)
使用 redisHget()
讀出 key 與 field,回傳為 promise。
Conclusion
- Node Redis 所提供的
hset()
與hget()
為 callback based,可使用promisify()
轉成 promise based