Ga naar inhoud

Inleiding tot scenario's

Een scenario is een graaf. Vakjes (de acties) zijn verbonden door verbindingen die waarden en signalen vervoeren. De engine voert een vakje uit zodra al zijn aangesloten invoeren iets hebben ontvangen.

Dat is wat in Restorm de pre- en post-requestscripts van andere API-clients vervangt — met één beslissend voordeel: u ziet de stroom.

Rechtsklik in de boom ▸ Toevoegen ▸ Scenario.

Een volledig scenario in de editor: een Input/Param-node, een HTTP-verzoek, een assertie op de statuscode, een Handlebars-extractie, een If-voorwaarde en een Log

  • Aanroepen aan elkaar knopen en een waarde van de een aan de ander doorgeven: een resource aanmaken, haar identificator ophalen, en die in de volgende aanroep gebruiken.
  • Controleren: asserties, validatie van een JSON-schema, vergelijking.
  • Vertakken en herhalen: if, switch, for, forEach, while, retry.
  • Meerdere transporten orkestreren: een MQTT-abonnement openen, een actie via HTTP uitlokken, controleren dat het bericht aankomt.
  • Automatiseren: hetzelfde scenario draait in de interface en zonder venster in continue integratie.
BegripWat het is
Vakje (node)Een actie. Er zijn negentig soorten beschikbaar — zie de catalogus
PoortEen aansluitpunt op een vakje, getypeerd en met een richting
Verbinding (edge)Een draad tussen een uitvoerpoort en een invoerpoort
SelectorEen pad dat op de waarde onderweg over een verbinding wordt toegepast (data.items[0].id)
RunvariabeleEen benoemde waarde, die tijdens de uitvoering wordt gezet en teruggelezen
ParameterEen invoer van het scenario, meegegeven bij de start of op de opdrachtregel
UitvoerEen resultaat dat aan de aanroeper van het scenario wordt aangeboden

Ze staan niet in de configuratie: ze horen bij het kader van het vakje.

PoortRichtingRol
inInvoerDe trigger. Die accepteert meerdere inkomende verbindingen en wacht dan tot alle zijn aangekomen — het is de barrière “wachten tot meerdere takken klaar zijn”
errorUitvoerDe foutroute. Alles wat mislukt, gaat daarlangs
doneUitvoerWordt uitgestuurd wanneer het vakje en zijn hele stroomafwaartse subgraaf klaar zijn

Het onderscheid tussen done en een waarde-uitvoer is belangrijk: een waarde komt eruit zodra zij is geproduceerd, terwijl done wacht tot alles wat ervan afhangt klaar is.

  1. Voeg een actie HTTP-verzoek toe en koppel die aan een bestaand verzoek.
  2. Voeg een actie Assert toe, met operator eq.
  3. Trek een verbinding van de poort response van het verzoek naar de invoer a van de assertie, en zet op die verbinding de selector status.
  4. Zet in de assertie b op 200.
  5. Klik op Uitvoeren.

De assertie heeft twee uitvoeren, then en else: sluit op elk een Log of een Toast aan om het resultaat langs te zien komen.