Symulowanie API HTTP
Kliknięcie prawym przyciskiem na folderze ▸ Dodaj ▸ Serwer HTTP.
Konfiguracja
Section titled “Konfiguracja”Serwer konfiguruje się za pomocą tych samych pól co żądanie — i w tym tkwi cała zaleta: metoda oraz ścieżka definiują nasłuchiwaną trasę, natomiast status, nagłówki i treść definiują wysyłaną odpowiedź.
| Pole | Rola |
|---|---|
| Metoda | Metoda trasy |
| Adres | localhost:<port><path> — host jest ustalony na stałe |
| Status symulacji | Zwracany kod, domyślnie 200 |
| Nagłówki | Nagłówki odpowiedzi |
| Treść | Treść odpowiedzi |

Routing
Section titled “Routing”Trasa to para metoda + ścieżka. Dopasowanie odbywa się na podstawie dokładnej ścieżki, a ciąg zapytania jest ignorowany. Każde wywołanie docierające na port bez odpowiadającej mu trasy otrzymuje 404.
Dwie trasy kolidują ze sobą tylko wtedy, gdy mają tę samą metodę, tę samą ścieżkę oraz ten sam port. Można zatem utworzyć po jednym żądaniu serwerowym na trasę i uruchomić je wszystkie.
GET localhost:8080/clients → 200, lista klientówGET localhost:8080/clients/42 → 200, jeden klientPOST localhost:8080/clients → 201, nagłówek LocationGET localhost:8080/clients/999 → 404 (brak trasy: odpowiedź domyślna)Szablony
Section titled “Szablony”Nagłówki i treść są rozwiązywane przy każdym przychodzącym wywołaniu.
Treść zawierająca {{maintenant}} albo {{compteur}} zmienia się więc
z wywołania na wywołanie, jeśli zmienia się wartość zmiennej.
Wskazówka: pozwala to sterować zachowaniem serwera w czasie jego pracy — wystarczy zmienić wartość zmiennej środowiskowej, a kolejne wywołanie otrzyma inną odpowiedź, bez ponownego uruchamiania.
Współdzielenie portu
Section titled “Współdzielenie portu”Serwer symulacji HTTP oraz serwer WebSocket lub Socket.IO mogą nasłuchiwać na tym samym porcie: Restorm kieruje zwykłe żądania do tras HTTP, a żądania przełączenia protokołu do serwera czasu rzeczywistego.
W scenariuszu
Section titled “W scenariuszu”Akcja Serwer HTTP hostuje trasę na czas trwania scenariusza i emituje
zdarzenie served — zawierające { request, response } — przy każdym
odebranym wywołaniu. To właśnie w ten sposób testuje się webhook:
Serwer HTTP ──connected──► Żądanie HTTP „wywołaj webhook” └────────served──────► Assert na request.body potem ──► Zamknięcie serwera HTTPZob. Serwery hostowane.