从 RESP2 迁移到 RESP3 回复指南

面向客户端开发者的 JSON RESP2 到 RESP3 回复参考

在 RESP3 中,可选 path 参数的默认值从 . 更改为 $。由于此更改,某些命令的回复略有变化。本页提供了 JSON 命令在 RESP2 和 RESP3 响应之间的简要比较,以帮助开发者将其客户端从 RESP2 迁移到 RESP3。

JSON 命令回复比较

类型使用“类似于 TypeScript 的语法”描述。Array<a> 表示数组,其中元素类型已知,但元素数量未知。

命令 RESP2 RESP3
所有 JSON 命令 可选 path 参数的默认值. 可选 path 参数的默认值: $
JSON.ARRAPPEND
JSON.ARRINDEX
JSON.ARRINSERT
JSON.ARRLEN
JSON.ARRTRIM
JSON.OBJLEN
JSON.STRAPPEND
JSON.STRLEN
JSON.TOGGLE
基于 $ 的路径参数
回复:Array<BulkString | null>

基于 . 的路径参数: 
回复:BulkString
基于 $ 的路径参数: 
回复:Array<number | null>

基于 . 的路径参数
回复:number
JSON.GET 回复:JSON 编码的字符串
示例
> JSON.SET k $ "[1,2,3]"
> JSON.GET k
"[1,2,3]"
回复:顶层为数组的 JSON 编码字符串
示例
> JSON.SET k $ "[1,2,3]"
> JSON.GET k
"[[1,2,3]]"
JSON.NUMINCRBY
JSON.NUMMULTBY
基于 $ 的路径参数
回复:JSON 编码的 BulkString | null

基于 . 的路径参数: 
回复:BulkString | null | error
基于 $ 的路径参数
回复:Array<number | null> | error

基于 . 的路径参数: 
回复:number | null | error
JSON.OBJKEYS 基于 $ 的路径参数
回复:Array<Array<BulkString>>

基于 . 的路径参数: 
回复:Array<BulkString>
基于 $ 的路径参数
回复:Array<Array<BulkString>>

基于 . 的路径参数: 
回复:Array<BulkString>
JSON.TYPE 基于 $ 的路径参数
回复:Array<BulkString>
示例
> JSON.TYPE k $
1) "array"

基于 . 的路径参数: 
回复:BulkString
基于 $ 的路径参数
回复:Array<Array<BulkString>>
示例
> JSON.TYPE k $
1) 1) "array"

基于 . 的路径参数: 
回复:Array<BulkString>
评价此页面
返回顶部 ↑