tedis-mod
v0.2.1-beta
Published
redis client for node.js with typescript and async
Downloads
19
Maintainers
Readme
Introduction
What is tedis
Tedis write with typescript, it's the client of redis for nodejs, support async with ts and commonjs
Installation
yarn add tedis
Getting started
commonjs
const { Tedis, TedisPool } = require("tedis");
typescript
import { Tedis, TedisPool } from "tedis";
// no auth
const tedis = new Tedis({
port: 6379,
host: "127.0.0.1",
});
// auth
const tedis = new Tedis({
port: 6379,
host: "127.0.0.1",
password: "your_password",
});
tls
const tedis = new Tedis({
port: 6379,
host: "127.0.0.1",
tls: {
key: fs.readFileSync(__dirname + "/client_server/client_key.pem"),
cert: fs.readFileSync(__dirname + "/client_server/client_cert.pem"),
},
});
url
Passing a url will override the host and port.
const tedis = new Tedis({
url: "redis://redisuser:[email protected]:6380/4",
tls: {
key: fs.readFileSync(__dirname + "/client_server/client_key.pem"),
cert: fs.readFileSync(__dirname + "/client_server/client_cert.pem"),
},
});
ca cert
Passing a ca (self signed) cert will override the key and cert.
const tedis = new Tedis({
port: 6379,
host: "127.0.0.1",
tls: {
ca: fs.readFileSync(__dirname + "/client_server/client_ca.pem"),
},
});
TedisPool
// no auth
const pool = new TedisPool({
port: 6379,
host: "127.0.0.1",
});
// auth
const pool = new TedisPool({
port: 6379,
host: "127.0.0.1",
password: "your_password",
});
const tedis = await pool.getTedis();
// ... do some commands
pool.putTedis(tedis);
tls
const tedis = new TedisPool({
port: 6379,
host: "127.0.0.1",
tls: {
key: fs.readFileSync(__dirname + "/client_server/client_key.pem"),
cert: fs.readFileSync(__dirname + "/client_server/client_cert.pem"),
},
});
Example
/**
* core
*/
await tedis.command("SET", "key1", "Hello");
// "OK"
await tedis.command("SET", "key2", "World");
// "OK"
/**
* key
*/
await tedis.keys("*");
// []
await tedis.exists("a");
// 0
/**
* string
*/
await tedis.set("mystring", "hello");
// "OK"
await tedis.get("mystring");
// "hello"
/**
* hash
*/
await tedis.hmset("myhash", {
name: "tedis",
age: 18,
});
// "OK"
await tedis.hgetall("myhash");
// {
// "name": "tedis",
// "age": "18"
// }
/**
* list
*/
await tedis.lpush("mylist", "hello", "a", "b", "c", "d", 1, 2, 3, 4);
// 9
await tedis.llen("mylist");
// 9
Type interface
base
pool
key
- del
- dump
- exists
- expire
- expireat
- keys
- migrate
- move
- object
- persist
- pexpire
- pexpireat
- pttl
- randomkey
- rename
- renamenx
- restore
- scan
- sort
- touch
- ttl
- type
- unlink
- wait
string
- append
- bitcount
- bitfield
- bitop
- bitpos
- decr
- decrby
- get
- getbit
- getrange
- getset
- incr
- incrby
- incrbyfloat
- mget
- mset
- msetnx
- psetex
- set
- setbit
- setex
- setnx
- setrange
- strlen
hash
list
set
- sadd
- scard
- sdiff
- sdiffstore
- sinter
- sinterstore
- sismember
- smembers
- smove
- spop
- srandmember
- srem
- sscan
- sunion
- sunionstore
zset
- bzpopmax
- bzpopmin
- zadd
- zcard
- zcount
- zincrby
- zinterstore
- zlexcount
- zpopmax
- zpopmin
- zrange
- zrangebylex
- zrangebyscore
- zrank
- zrem
- zremrangebylex
- zremrangebyrank
- zremrangebyscore
- zrevrange
- zrevrangebylex
- zrevrangebyscore
- zrevrank
- zscan
- zscore
- zunionstore