...
Telo odosielanej správy je JSON pole s parametrami volanej RPC. Výstupom takejto požiadavky sú hodnoty výstupných parametrov RPC uložené v JSON objekte, ktorého atribúty sú požadované názvy výstupných parametrov definované atribútmi returnAs. Detaily serializácie parametrov RPC metód boli popísaná v predchádzajúcej kapitole. Príklad volania RPC s názvom TestInOut na evente E.SmartWeb_Demo s 5 parametrami, pričom prvý, tretí a štvrtý parameter sú vstupno-výstupné a definujú logický názov pre vracané hodnoty parametrov. Vstupné parametre (druhý a piaty) zároveň využívajú implicitnú konverziu na Unival objekt z jednoduchých JSON typov.
POST http://localhost/smartWeb/api/rest/v0/d2/rpc/E.SmartWeb_Demo/TestInOut
| Blok kódu | ||||
|---|---|---|---|---|
| ||||
[
{
"type": "bool",
"value": "vTrue",
"returnAs": "boolParam" // výstupná hodnota bude pod názvom boolParam
},
123,
{
"type": "real",
"value": 10.9,
"returnAs": "realParam", // výstupná hodnota bude pod názvom realParam
"returnFields": ["ValueTime", "Status"] // k výstupnej hodnote sú požadované aj atribúty ValueTime a Status
},
{
"type": "time",
"returnAs": "timeParam" // výstupná hodnota bude pod názvom timeParam
},
"hello D2000"
] |
Výstup z volania RPC je v JSON objekte, ktorý má atribúty podľa požadovaných názvov výstupných parametrov:
| Blok kódu | ||||
|---|---|---|---|---|
| ||||
{
"realParam": {
"type": "real",
"value": 5.45,
"status": [
"Valid"
],
"valueTime": 1498213794522
},
"boolParam": {
"type": "bool",
"value": "vFalse"
},
"timeParam": {
"type": "time",
"value": 1498213794012
}
} |