İçeriğe geç

Bir HTTP API'sini simüle etme

Bir klasöre sağ tıklayın ▸ Ekle ▸ HTTP sunucusu.

Bir sunucu, bir istekle tamamen aynı alanlarla yapılandırılır — ve işin bütün cazibesi de burada: yöntem ile yol dinlenen rotayı, durum kodu, başlıklar ve gövde ise sunulan yanıtı tanımlar.

AlanRolü
YöntemRotanın yöntemi
Adreslocalhost:<port><path> — ana makine sabittir
Simülasyon durum koduDöndürülen kod, varsayılan olarak 200
BaşlıklarYanıtın başlıkları
GövdeYanıtın gövdesi

Bir HTTP sunucusu öğesi: localhost + port + yola indirgenmiş URL, sunulan yöntem, simüle edilen yanıtın başlıkları ve gövdesi

Bir rota, yöntem + yol ikilisidir. Eşleştirme tam yol üzerinden yapılır, sorgu dizesi yok sayılır. Porta gelip hiçbir rotayla eşleşmeyen her çağrı bir 404 alır.

İki rota yalnızca aynı yöntemi, aynı yolu ve aynı portu paylaşıyorlarsa çakışır. Dolayısıyla her rota için bir sunucu isteği oluşturup hepsini birlikte başlatabilirsiniz.

GET localhost:8080/clients → 200, müşteri listesi
GET localhost:8080/clients/42 → 200, tek bir müşteri
POST localhost:8080/clients → 201, Location başlığı
GET localhost:8080/clients/999 → 404 (rota yok: varsayılan yanıt)

Başlıklar ve gövde gelen her çağrıda çözülür. Bu nedenle {{maintenant}} ya da {{compteur}} içeren bir gövde, değişken değiştiği sürece her çağrıda farklı olur.

İpucu: bu, sunucunun davranışını çalışırken yönlendirmenizi sağlar — bir ortam değişkeninin değerini değiştirin, bir sonraki çağrı yeniden başlatmaya gerek kalmadan farklı bir yanıt alır.

Bir HTTP simülasyon sunucusu ile bir WebSocket ya da Socket.IO sunucusu aynı portta dinleyebilir: Restorm sıradan istekleri HTTP rotalarına, protokol yükseltme taleplerini ise gerçek zamanlı sunucuya yönlendirir.

HTTP sunucusu eylemi, rotayı senaryo süresince barındırır ve alınan her çağrı için{ request, response } taşıyan — bir served olayı yayar. Bir webhook’u test etmenin yolu budur:

HTTP sunucusu ──connected──► HTTP isteği “webhook'u tetikle”
└─────────served──────► request.body üzerinde Assert
ardından ──► HTTP sunucusunu kapat

Bkz. Barındırılan sunucular.