キーと値の状態操作

について 州プロバイダー は、状態を保存するためのキー・バリュー操作を持っている。

値の設定

キーを使用すると、後で検索するために値を格納することができます。

メソッド署名

set<T>(key: string, value: T)

値の設定

const session = vcr.createSession();
const state = new State(session);

await state.set("obj", { "foo": bar });

値のインクリメント

整数を保存している場合、それを指定した量だけインクリメントすることができる。

メソッド署名

increment<T>(key: string, count: number)

値のインクリメント

await state.increment("count", 1);

値の減少

整数を保存している場合は、指定した量だけデクリメントすることができる。

メソッド署名

decrement<T>(key: string, count: number)

値の減少

await state.decrement("count", 1);

値を取得する

キーを使って、以前に保存した値を取り出すことができる。

メソッド署名

get<T>(key: string)

価値を得る

const object = await state.get("obj");

値の有効期限

キーを使って、以前に保存した値を指定秒数後に失効させることができる。

メソッド署名

expire(key: string, seconds: number, option?: EXPIRE_OPTION)

種類

expire は、一連のオプション(EXPIRE_OPTION):

  • NX:キーに有効期限がない場合のみ、有効期限を設定する。
  • XX:キーに有効期限がある場合のみ、有効期限を設定する。
  • GT:新しい有効期限が現在の有効期限より大きい場合のみ、有効期限を設定する。
  • LT:新しい有効期限が現在の有効期限より短い場合のみ、有効期限を設定する。

バリューの失効

await state.expire("obj", 200);

値の削除

キーを使って、以前に保存した値を削除することができます。

メソッド署名

delete<T>(key: string)

値の削除

await state.delete("obj");