Přeskočit obsah

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 ..."
}