JSON¤
SP-Lang nabízí vysokorychlostní přístup k datovým objektům JSON.
!GET
: Získá hodnotu z JSON¤
Typ: Mapping.
Synopsis:
!GET
what: <item>
typ: <type>
od: <json>
výchozí: <value>
Získat položku zadanou pomocí what
z JSON objektu from
.
Pokud položka není nalezena, vrátí default
nebo chybu, pokud není zadáno default
.
default
je nepovinné.
Volitelně můžete zadat typ položky pomocí type
.
Příklad
JSON (!ARG jsonmessage
):
{
"foo.bar": "Příklad"
}
Pro získání pole foo.bar
z výše uvedeného JSON:
!GET
what: foo.bar
from: !ARG jsonmessage
JSON Pointer¤
Pro přístup k položce ve vnořeném JSONu je třeba použít JSON Pointer (např. /foo/bar
o/foo/bar
) jako what
.
Pro odvození typu položky se použije schéma, ale pro složitější přístup doporučujeme použít argument type
.
Příklad
Vnořený JSON (!ARG jsonmessage
):
{
"foo": {
"bar": "Příklad"
}
}
Příklad extrakce řetězce z vnořeného JSON:
!GET
what: /foo/bar
type: str
from: !ARG jsonmessage
!JSON.PARSE
: Parsuje JSON¤
Typ: Mapping.
Synopsis:
!JSON.PARSE
what: <str>
schéma: <schema>
Parsuje JSON řetězec.
Výsledek lze použít např. pomocí operátoru !GET
.
Nepovinný argument schema
určuje schéma, které se má použít.
Výchozím schématem je vestavěné schéma ANY
.
Příklad
!JSON.PARSE
what: |
{
"string1": "Hello World!",
"string2": "Goodby ..."
}