JSON.RESP - Amazon ElastiCache

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

JSON.RESP

Renvoie la valeur JSON au chemin donné dans le protocole de sérialisation Valkey ou Redis OSS (RESP). Si la valeur est un conteneur, la réponse est un tableau RESP ou un tableau imbriqué.

  • La valeur nulle de JSON est mappée à Null Bulk String de RESP.

  • Les valeurs booléennes de JSON sont mappées aux chaînes simples respectives de RESP.

  • Les nombres entiers sont mappés aux entiers de RESP.

  • Les nombres à virgule flottante double IEEE de 64 bits sont mappés aux chaînes en bloc de RESP.

  • Les chaînes JSON sont mappées aux chaînes en bloc de RESP.

  • Les tableaux JSON sont représentés comme des tableaux RESP, où le premier élément est la chaîne simple [, suivie des éléments du tableau.

  • Les objets JSON sont représentés comme des tableaux RESP, où le premier élément est la simple chaîne {, suivie des paires clé-valeur, chacune d'entre elles étant une chaîne en bloc de RESP.

Syntaxe

JSON.RESP <key> [path]
  • clé (obligatoire) — Une clé Valkey ou Redis OSS de type document JSON.

  • path (facultatif) : chemin JSON. Par défaut, il s'agit de la racine si elle n'est pas fournie.

Retour

Si le chemin est une syntaxe améliorée :

  • Tableau de tableaux. Chaque élément du tableau représente la forme RESP de la valeur au niveau d'un chemin.

  • Tableau vide si la clé du document n'existe pas.

Si le chemin est une syntaxe restreinte :

  • Tableau qui représente la forme RESP de la valeur au niveau du chemin.

  • Valeur nulle si la clé du document n'existe pas.

Exemples

Syntaxe de chemin améliorée :

127.0.0.1:6379> JSON.SET k1 . '{"firstName":"John","lastName":"Smith","age":27,"weight":135.25,"isAlive":true,"address":{"street":"21 2nd Street","city":"New York","state":"NY","zipcode":"10021-3100"},"phoneNumbers":[{"type":"home","number":"212 555-1234"},{"type":"office","number":"646 555-4567"}],"children":[],"spouse":null}' OK 127.0.0.1:6379> JSON.RESP k1 $.address 1) 1) { 2) 1) "street" 2) "21 2nd Street" 3) 1) "city" 2) "New York" 4) 1) "state" 2) "NY" 5) 1) "zipcode" 2) "10021-3100" 127.0.0.1:6379> JSON.RESP k1 $.address.* 1) "21 2nd Street" 2) "New York" 3) "NY" 4) "10021-3100" 127.0.0.1:6379> JSON.RESP k1 $.phoneNumbers 1) 1) [ 2) 1) { 2) 1) "type" 2) "home" 3) 1) "number" 2) "555 555-1234" 3) 1) { 2) 1) "type" 2) "office" 3) 1) "number" 2) "555 555-4567" 127.0.0.1:6379> JSON.RESP k1 $.phoneNumbers[*] 1) 1) { 2) 1) "type" 2) "home" 3) 1) "number" 2) "212 555-1234" 2) 1) { 2) 1) "type" 2) "office" 3) 1) "number" 2) "555 555-4567"

Syntaxe de chemin restreinte :

127.0.0.1:6379> JSON.SET k1 . '{"firstName":"John","lastName":"Smith","age":27,"weight":135.25,"isAlive":true,"address":{"street":"21 2nd Street","city":"New York","state":"NY","zipcode":"10021-3100"},"phoneNumbers":[{"type":"home","number":"212 555-1234"},{"type":"office","number":"646 555-4567"}],"children":[],"spouse":null}' OK 127.0.0.1:6379> JSON.RESP k1 .address 1) { 2) 1) "street" 2) "21 2nd Street" 3) 1) "city" 2) "New York" 4) 1) "state" 2) "NY" 5) 1) "zipcode" 2) "10021-3100" 127.0.0.1:6379> JSON.RESP k1 1) { 2) 1) "firstName" 2) "John" 3) 1) "lastName" 2) "Smith" 4) 1) "age" 2) (integer) 27 5) 1) "weight" 2) "135.25" 6) 1) "isAlive" 2) true 7) 1) "address" 2) 1) { 2) 1) "street" 2) "21 2nd Street" 3) 1) "city" 2) "New York" 4) 1) "state" 2) "NY" 5) 1) "zipcode" 2) "10021-3100" 8) 1) "phoneNumbers" 2) 1) [ 2) 1) { 2) 1) "type" 2) "home" 3) 1) "number" 2) "212 555-1234" 3) 1) { 2) 1) "type" 2) "office" 3) 1) "number" 2) "555 555-4567" 9) 1) "children" 2) 1) [ 10) 1) "spouse" 2) (nil)