Podpora REST a Qodly pro singletony

Automaticky přeloženo z Deepl

S aplikací 4D 20 R5 jsme vydali singletony. A ve verzi 4D 20 R6 nyní umožňujeme přímo volat exponované funkce sdílených singletonů prostřednictvím volání REST. Stejně tak můžete vystavené funkce svých sdílených singletonů používat v událostech při návrhu svých Qodly Pages. Dovolte mi, abych se těmito novými možnostmi zabýval hlouběji.

HDI REST a podpora singletonů v Qodly

Řekněme, že chcete vytvořit službu REST, která není spojena s konkrétní datovou třídou.

Snadno!

Nejprve vytvořme sdílený singleton s vystavenou funkcí, tedy tou, kterou chcete volat prostřednictvím REST:

//class mySingleton

shared singleton Class constructor()
	
exposed Function myFonction($value : Integer)
	//code

Poté se podíváme do katalogu tak, že zkontrolujeme JSON vrácený myServer/rest/$catalog/$all. Vidím, že se právě objevil můj singleton se svou exponovanou funkcí:

"singletons": [
    {
      "name": "mySingleton",
      "methods": [
        {
          "name": "myFonction",
          "allowedOnHTTPGET": false,
          "exposed": true
        }
      ]
    }
  ],

Nyní mohu provést volání REST na myServer/rest/$singleton/mySingleton/myFonction a přímo tak spustit svou exponovanou funkci.
Volání konkrétních funkcí nebo singletonů můžete samozřejmě omezit nastavením oprávnění v souboru roles.json.

Uvnitř Qodly je to ještě jednodušší. Při konfiguraci událostí můžete vybírat exponované funkce sdílených singletonů jako jakoukoli exponovanou funkci datové třídy:

Qodly Studio zobrazí můj singleton uvnitř katalogu a umožní mi vybrat jeho exponované funkce pro události.

A podobně můžete konfigurovat práva ke spuštění singletonů a jejich vystavených funkcí prostřednictvím obrazovky oprávnění:

blank

Qodly Studio mi na stránce rolí a oprávnění umožňuje konfigurovat přístupová práva mého singletonu.

Pokud chcete snadno použitelný příklad toho, co všechno můžete se singletony provádět, doporučuji vám podívat se na HDI o singletonech.

Doufáme, že vám tyto dvě funkce usnadní používání singletonů.

Pokud máte připomínky nebo komentáře, neváhejte je přinést do našeho fóra!

Nicolas Brachfogel
• Product Owner & Senior Developer • Nicolas Brachfogel nastoupil do 4D v roce 2017 jako senior vývojář (4D server a sítě). Jako Product Owner, který řídí vydání Apple Silicon, má na starosti psaní uživatelských příběhů a jejich převod do funkčních specifikací a také zajišťuje, aby implementace funkcí vyhovovaly potřebám zákazníků. Nicolas, absolvent Institut Supérieur d'Informatique Appliquée (INSIA), začal svou kariéru jako softwarový vývojář v roce 2001. Po několika letech kódování v Javě a C++ se specializoval na vývoj klient-server pro společnosti zabývající se videohrami. Jako serverový vývojář/architekt úspěšně pracoval na serverových architekturách mnoha her (Dofus Arena, Drakerz, Trivial Pursuit Go!).