Redis 命令参数

Redis 命令如何以编程方式公开其文档

The COMMAND DOCS 命令返回关于可用 Redis 命令的以文档为中心的 信息。 命令返回的映射回复包含 *arguments* 键。 此键存储描述命令参数的数组。

*arguments* 数组中的每个元素都是具有以下字段的映射

  • name: 参数的名称,始终存在。 参数的名称仅用于识别目的。 它不会在命令的语法渲染过程中显示。 相同的名称可以多次出现在整个参数树中,但与其他同级参数的名称相比它是唯一的。 这允许为每个参数获取唯一的标识符(从根到任何参数的路径中所有名称的连接)。
  • display_text: 参数的显示字符串,存在于具有可显示表示形式的参数中(所有不是 oneof/block 的参数)。 这是在命令的语法渲染过程中使用的字符串。
  • type: 参数的类型,始终存在。 参数必须具有以下类型之一
    • string: 字符串参数。
    • integer: 整数参数。
    • double: 双精度参数。
    • key: 表示键名称的字符串。
    • pattern: 表示类似通配符模式的字符串。
    • unix-time: 表示 Unix 时间戳的整数。
    • pure-token: 参数是一个标记,表示一个保留的关键字,可以提供也可以不提供。 不要与自由文本用户输入混淆。
    • oneof: 参数是嵌套参数的容器。 此类型允许在多个嵌套参数中进行选择(请参见下面的 XADD 示例)。
    • 块:参数是一个用于嵌套参数的容器。此类型允许对参数进行分组并对其应用属性(例如 *可选*),以将其应用于所有参数(请参见下面的 XADD 示例)。
  • 键规范索引:此值对 *键* 类型的每个参数都有效。它是命令 键规范 中与参数对应的规范的基于 0 的索引。
  • 标记:一个常量字面量,它在参数(用户输入)本身之前。
  • 摘要:参数的简短描述。
  • 自:参数的首次 Redis 版本(或对于模块命令,模块版本)。
  • 自弃用:弃用命令的 Redis 版本(或对于模块命令,模块版本)。
  • 标志:参数标志的数组。可能的标志有
    • 可选:表示该参数是可选的(例如,SET 命令的 *GET* 子句)。
    • 多个:表示参数可以重复(例如,DEL 命令的 *键* 参数)。
    • 多个标记:表示该参数可能与其前面的标记一起重复(请参见 SORTGET pattern 子句)。
  • 值:参数的值。对于除 *oneof* 和 *block* 之外的参数类型,这是一个字符串,它描述了命令语法中的值。对于 *oneof* 和 *block* 类型,这是一个嵌套参数数组,每个参数都是本节中描述的映射。

示例

XADD 的修剪子句,即 [MAXLEN|MINID [=|~] threshold [LIMIT count]],在顶层表示为 *block* 类型的参数。

它包含四个嵌套参数

  1. 修剪策略:此嵌套参数具有 *oneof* 类型,有两个嵌套参数。每个嵌套参数 *MAXLEN* 和 *MINID* 的类型都是 *纯标记*。
  2. 修剪运算符:此嵌套参数是可选的 *oneof* 类型,有两个嵌套参数。每个嵌套参数 *=* 和 *~* 都是 *纯标记*。
  3. 阈值:此嵌套参数是一个 *字符串*。
  4. 计数:此嵌套参数是一个可选的 *整数*,带有 *标记*(*LIMIT*)。

以下是 XADD 的参数数组

1) 1) "name"
   2) "key"
   3) "type"
   4) "key"
   5) "value"
   6) "key"
2)  1) "name"
    2) "nomkstream"
    3) "type"
    4) "pure-token"
    5) "token"
    6) "NOMKSTREAM"
    7) "since"
    8) "6.2"
    9) "flags"
   10) 1) optional
3) 1) "name"
   2) "trim"
   3) "type"
   4) "block"
   5) "flags"
   6) 1) optional
   7) "value"
   8) 1) 1) "name"
         2) "strategy"
         3) "type"
         4) "oneof"
         5) "value"
         6) 1) 1) "name"
               2) "maxlen"
               3) "type"
               4) "pure-token"
               5) "token"
               6) "MAXLEN"
            2) 1) "name"
               2) "minid"
               3) "type"
               4) "pure-token"
               5) "token"
               6) "MINID"
               7) "since"
               8) "6.2"
      2) 1) "name"
         2) "operator"
         3) "type"
         4) "oneof"
         5) "flags"
         6) 1) optional
         7) "value"
         8) 1) 1) "name"
               2) "equal"
               3) "type"
               4) "pure-token"
               5) "token"
               6) "="
            2) 1) "name"
               2) "approximately"
               3) "type"
               4) "pure-token"
               5) "token"
               6) "~"
      3) 1) "name"
         2) "threshold"
         3) "type"
         4) "string"
         5) "value"
         6) "threshold"
      4)  1) "name"
          2) "count"
          3) "type"
          4) "integer"
          5) "token"
          6) "LIMIT"
          7) "since"
          8) "6.2"
          9) "flags"
         10) 1) optional
         11) "value"
         12) "count"
4) 1) "name"
   2) "id_or_auto"
   3) "type"
   4) "oneof"
   5) "value"
   6) 1) 1) "name"
         2) "auto_id"
         3) "type"
         4) "pure-token"
         5) "token"
         6) "*"
      2) 1) "name"
         2) "id"
         3) "type"
         4) "string"
         5) "value"
         6) "id"
5) 1) "name"
   2) "field_value"
   3) "type"
   4) "block"
   5) "flags"
   6) 1) multiple
   7) "value"
   8) 1) 1) "name"
         2) "field"
         3) "type"
         4) "string"
         5) "value"
         6) "field"
      2) 1) "name"
         2) "value"
         3) "type"
         4) "string"
         5) "value"
         6) "value"
RATE THIS PAGE
Back to top ↑