Gå til indhold

HTTP-mockserver

Højreklik på en mappe ▸ Tilføj ▸ HTTP-server.

En server konfigureres med de samme felter som en anmodning — og det er netop pointen: metoden og stien definerer den rute, der lyttes på, og statussen, headerne og bodyen definerer det svar, der serveres.

FeltRolle
MetodeRutens metode
Adresselocalhost:<port><path> — værten er låst
Mock-statusDen returnerede kode, 200 som standard
HeadereSvarets headere
BodySvarets body

Et HTTP-serverelement: URL'en reduceret til localhost + port + sti, den serverede metode, headerne og bodyen i det simulerede svar

En rute er et par af metode + sti. Matchningen sker på den nøjagtige sti, og forespørgselsstrengen ignoreres. Ethvert kald, der rammer porten uden at svare til en rute, får en 404.

To ruter kolliderer kun, hvis de deler samme metode, samme sti og samme port. Du kan derfor oprette én serveranmodning pr. rute og starte dem alle.

GET localhost:8080/clients → 200, liste de clients
GET localhost:8080/clients/42 → 200, un client
POST localhost:8080/clients → 201, en-tête Location
GET localhost:8080/clients/999 → 404 (aucune route : réponse par défaut)

Headerne og bodyen opløses ved hvert indgående kald. En body, der indeholder {{maintenant}} eller {{compteur}}, ændrer sig derfor fra kald til kald, hvis variablen ændrer sig.

Tip: det giver dig mulighed for at styre serverens opførsel, mens den kører — skift værdien på en miljøvariabel, og det næste kald får et andet svar, uden genstart.

En HTTP-mockserver og en WebSocket- eller Socket.IO-server kan lytte på den samme port: Restorm dirigerer almindelige anmodninger til HTTP-ruterne og upgrade-anmodninger til realtidsserveren.

Handlingen HTTP-server hoster ruten, så længe scenariet kører, og udsender en served-hændelse — som bærer { request, response }pr. modtaget kald. Det er måden at teste et webhook på:

HTTP-server ──connected──► HTTP-anmodning »udløs webhooket«
└────────served──────► Assert på request.body
derefter ──► Luk HTTP-server

Se Hostede servere.