Redis 命令参数

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

COMMAND DOCScommand 返回有关可用 Redis 命令的以文档为中心的信息。 命令返回的 map 回复包括 arguments 键。 此键存储描述命令参数的数组。

arguments 数组中的每个元素都是一个具有以下字段的 map:

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

的 trimming 子句XADD,即[MAXLEN|MINID [=|~] threshold [LIMIT count]]在顶级表示为 block-typed 参数

它由四个嵌套参数组成:

  1. 修剪策略:此嵌套参数具有 One of 类型,其中包含两个嵌套参数。 每个嵌套参数 MAXLENMIN 都被类型化为 pure-token
  2. 修剪运算符:此嵌套参数是具有两个嵌套参数的可选参数。 每个嵌套参数 =~ 都是一个纯令牌
  3. threshold:此嵌套参数是一个字符串
  4. count:此嵌套参数是带有令牌LIMIT) 的可选整数

这是XADD的 arguments 数组:

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"
为本页评分
返回顶部 ↑