Redis 命令参数

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

COMMAND DOCS 命令返回关于可用 Redis 命令的文档信息。 该命令返回的映射回复包括 arguments 键。 此键存储一个描述命令参数的数组。

arguments 数组中的每个元素都是一个包含以下字段的映射:

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

Example

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

它由四个嵌套的参数组成:

  1. 修剪策略: 这个嵌套参数有一个oneof类型,包含两个嵌套参数。 每个嵌套参数,MAXLENMINID,都被类型化为pure-token
  2. 修剪操作符: 这个嵌套参数是一个可选的 oneof 类型,包含两个嵌套参数。 每个嵌套参数,=~,都是一个 纯标记
  3. threshold: 这个嵌套参数是一个字符串
  4. count: 这个嵌套参数是一个可选的整数,带有一个标记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 ↑