Servere găzduite
Aceste acțiuni fac invers față de celelalte: în loc să apeleze un serviciu, îl găzduiesc pe durata scenariului.
Cazul de utilizare tipic: testarea unui webhook. Scenariul deschide un server, declanșează apelul de business, așteaptă sosirea apelului de intrare și îi verifică conținutul — totul într-un singur graf.
Tiparul comun
Section titled “Tiparul comun”O acțiune de ascultare are două ieșiri:
| Ieșire | Emisie |
|---|---|
connected | Un semnal, o singură dată, când serverul ascultă |
served | O emisie pentru fiecare apel de intrare servit, purtând { request, response } |
Rețineți că nu există o ieșire response: aceste cutii nu fac apeluri, ci le
primesc.
Ca și în cazul conexiunilor, activați „Rejoacă la fiecare eveniment primit” pe
cutiile conectate la served, pentru a trata toate apelurile, nu doar pe primul.
Server HTTP ──connected──► Cerere HTTP „declanșează webhookul” └────────served──────► Assert pe request.body.event apoi ──► Închidere server HTTPPerechile disponibile
Section titled “Perechile disponibile”| Ascultare | Închidere | Protocol |
|---|---|---|
| Server HTTP | Închidere server HTTP | HTTP |
| Server gRPC | Închidere server gRPC | gRPC |
| Server SOAP | Închidere server SOAP | SOAP — dirijare după SOAPAction sau după numele operației |
| Server GraphQL | Închidere server GraphQL | GraphQL — servește SDL-ul și rezolvatorii configurați |
| Server OData | Închidere server OData | OData — aplică $filter, $select, $orderby, $top, $skip, $count, $expand, $batch |
Alte două acțiuni de închidere privesc serverele din familia WebSocket: Închidere server WebSocket și Închidere server Socket.IO — vedeți Conexiuni și fluxuri.
Ce răspunde serverul
Section titled “Ce răspunde serverul”Răspunsul este cel configurat pe cererea pe care o controlează acțiunea: stare, antete și corp în HTTP, metode simulate în gRPC, operații în SOAP, rezolvatori în GraphQL, date în OData.
{{Variabilele}} sunt rezolvate în momentul servirii: modificarea unei
variabile în timp ce serverul ascultă schimbă răspunsul următor. Vedeți
Modul server.
Partajarea portului
Section titled “Partajarea portului”Restorm deschide un singur socket pentru fiecare port și dirijează în funcție
de natura apelului. Un server HTTP de simulare și un server WebSocket pot deci
ascultă împreună pe :8080.
Portul este eliberat la oprirea ultimei sale rute.