Sari la conținut

Simularea unui API HTTP

Clic dreapta pe un folder ▸ Adaugă ▸ Server HTTP.

Un server se configurează cu aceleași câmpuri ca o cerere — și tocmai acesta este interesul: metoda și calea definesc ruta ascultată, iar starea, antetele și corpul definesc răspunsul servit.

CâmpRol
MetodăMetoda rutei
Adresălocalhost:<port><path> — gazda este fixată
Stare de simulareCodul returnat, 200 implicit
AnteteAntetele răspunsului
CorpCorpul răspunsului

Un element Server HTTP: URL-ul redus la localhost + port + cale, metoda servită, antetele și corpul răspunsului simulat

O rută este o pereche metodă + cale. Potrivirea se face pe calea exactă, șirul de interogare fiind ignorat. Orice apel care ajunge pe port fără să corespundă unei rute primește un 404.

Două rute intră în coliziune numai dacă partajează aceeași metodă, aceeași cale și același port. Puteți deci crea o cerere de server pentru fiecare rută și să le porniți pe toate.

GET localhost:8080/clients → 200, listă de clienți
GET localhost:8080/clients/42 → 200, un client
POST localhost:8080/clients → 201, antet Location
GET localhost:8080/clients/999 → 404 (nicio rută: răspuns implicit)

Antetele și corpul sunt rezolvate la fiecare apel sosit. Un corp care conține {{maintenant}} sau {{compteur}} se schimbă, prin urmare, de la un apel la altul, dacă variabila se schimbă.

Sfat: acest lucru permite să controlați comportamentul serverului în timp ce rulează — schimbați valoarea unei variabile de mediu și apelul următor primește un răspuns diferit, fără repornire.

Un server HTTP de simulare și un server WebSocket sau Socket.IO pot ascultă pe același port: Restorm dirijează cererile obișnuite către rutele HTTP și cererile de comutare către serverul în timp real.

Acțiunea Server HTTP găzduiește ruta pe durata scenariului și emite un eveniment served — purtând { request, response }pentru fiecare apel primit. Este modul de a testa un webhook:

Server HTTP ──connected──► Cerere HTTP „declanșează webhookul”
└────────served──────► Assert pe request.body
apoi ──► Închidere server HTTP

Vedeți Servere găzduite.