Decoy
Decoy ist ein nativer macOS-Mock-Server für lokale API- und Webhook-Simulationen: Endpunkte definieren, Requests prüfen und konfigurierbare Antworten liefern.
Was ist Decoy?
Decoy ist ein nativer macOS-Mock-Server für Entwickler, die HTTP-Endpunkte und Webhook-Verhalten lokal simulieren müssen. Er ermöglicht das Definieren von Routen, das Inspizieren eingehender Requests und das Zurückgeben kontrollierter Mock-Antworten – ideal zum Testen von API-Wrappers, Request-Handling, Redirects und Fehlermodi ohne externe Dienste.
Der Kernzweck von Decoy ist lokales, on-demand Testing: Richten Sie Ihren Client auf Decoys lokale Domain und Port, beobachten Sie jeden Request beim Eintreffen und passen Sie Endpoint-Antworten an, um Ihren Code gegen gewählte Szenarien zu testen.
Wichtige Funktionen
- Native macOS-App mit instantem Start: Läuft als SwiftUI-Anwendung und startet blitzschnell ohne Docker, Cloud-Tunnels oder Setup-Schritte.
- Endpoint- und Request/Response-Steuerung: Definieren Sie Methoden + Pfad-Paare, gruppiert in Projekte, und wählen Sie Response-Statuscodes, Body-Typ, Header und optionale Verzögerung.
- Live-Request-Inspektion: Jeder eingehende Request wird mit Headern, Body, Quell-IP, Timestamps und Request-IDs (UUID) angezeigt. JSON-Bodies werden automatisch formatiert.
- Parametrisierte Pfade und Projekte: Unterstützt Pfad-Parameter (z. B.
/users/:idpasst zu/users/42) und organisiert Endpunkte in Projekten. - Response-Formate für gängige Web-Szenarien: Wählen Sie zwischen Plain Text, JSON, HTML, XML, Datei, leer oder Redirect; Location-Header werden für Redirects automatisch konfiguriert.
- Browser- und CORS-Unterstützung: Browser-Requests „funktionieren einfach“, CORS-Header werden automatisch hinzugefügt. Redirect-Statuscodes (301, 302, 307, 308) werden unterstützt.
- Request/Response-Snapshots und Exports: Sehen Sie, was tatsächlich zurückgesendet wurde, und exportieren Sie Requests als cURL, JavaScript fetch oder Ruby.
- Langlebige Request-Logs via SQLite: Requests werden sofort in SQLite geschrieben, sodass Daten bei unerwartetem App-Absturz nicht verloren gehen.
Decoy nutzen
- Installieren Sie Decoy aus dem Mac App Store und starten Sie die App auf macOS 14 Sonoma oder neuer.
- Erstellen oder wählen Sie ein Projekt, dann definieren Sie Endpunkte mit einem Methoden- und Pfad-Paar.
- Konfigurieren Sie für jeden Endpoint die Mock-Response: Statuscode festlegen, Body-Typ wählen (z. B. JSON, HTML, XML oder Datei), Header hinzufügen und optional Verzögerung setzen.
- Richten Sie Ihre App oder Test-Tools auf die Decoy-Local-Domain und -Port (decoy.my:8998 wird in der Produktbeschreibung erwähnt).
- Senden Sie Requests von Client oder Browser. Decoy zeigt Details jedes eingehenden Requests an und wendet Response-Änderungen beim nächsten Request an.
Anwendungsfälle
- Webhook-Handling und Edge-Cases testen: Senden Sie Webhook-Requests an Decoy, um zu prüfen, wie Ihr Code Statuscodes, Response-Bodies, Header und simulierte Latenz verarbeitet.
- API-Wrapper-Logik verifizieren: Testen Sie einen API-Client gegen kontrollierte Mock-Endpunkte, passen Sie Response-Payloads und Header an, während Sie eingehende Requests beobachten.
- Redirect-Verhalten reproduzieren: Konfigurieren Sie Endpunkte für Redirects (mit passendem Location-Header), um zu testen, wie Ihre App 301/302/307/308 folgt oder reagiert.
- Statische Inhalte während der Entwicklung servieren: Nutzen Sie Datei-Responses für Bilder, PDFs oder andere Dateien, oder servieren Sie vollständige HTML-Seiten mit Body-Typ HTML.
- Echte Request/Response-Interaktionen aufzeichnen und wiederverwenden: Verwenden Sie Request-Snapshots und exportierte cURL- oder fetch/Ruby-Äquivalente, um Issues zu reproduzieren oder Beispiele zu teilen.
FAQ
Benötigt Decoy Docker, Cloud-Tunnels oder Konfigurationsdateien?
Nein. Die Produktbeschreibung besagt, es läuft ohne Docker, Cloud-Tunnels oder Config-Dateien.
Welche Plattformen und Versionen werden unterstützt?
Decoy erfordert macOS 14 Sonoma oder neuer.
Wie werden Änderungen an Mock-Responses übernommen?
Bearbeitungen (z. B. JSON, Header oder Statuscodes) wirken sich auf den nächsten eingehenden Request aus.
Kann Decoy Browser-Requests und CORS handhaben?
Ja. Browser-Requests werden unterstützt, CORS-Header automatisch hinzugefügt.
Wo werden Request-Daten gespeichert?
Requests werden sofort in SQLite geschrieben, und die Produktbeschreibung merkt an, dass nichts bei unerwartetem App-Absturz verloren geht.
Alternativen
- Lokale HTTP-Mock-Server (generische Tools): Tools dieser Kategorie bieten ebenfalls lokale Endpunkte und steuerbare Antworten, meist über Konfigurationsdateien oder Container; Decoy setzt auf eine native macOS-Benutzeroberfläche ohne Docker.
- Dedizierte API-Mocking-Plattformen (gehostete Dienste): Diese simulieren Endpunkte über das Netzwerk, erfordern aber in der Regel externe Einrichtung und Bereitstellung statt eines lokalen Mock-Servers.
- Request/Response-Stubbing-Bibliotheken oder Test-Frameworks: Manche Teams nutzen codebasierte Stubs in ihrer Test-Suite; das unterscheidet sich von Decoys eigenständigem lokalem Server mit UI zur Request-Prüfung und Response-Bearbeitung.
- API-Test-Tools mit Mocking-Unterstützung: Einige interaktive API-Clients unterstützen Mocking oder lokale Simulationen; Workflows können abweichen, insbesondere bei dedizierter Request-Prüfung, Projekten und Response-Snapshot-/Export-Funktionen.
Alternativen
Falconer
Falconer ist eine selbstaktualisierende Wissensplattform für schnelle Teams: interne Doku und Code-Context schreiben, teilen und gezielt finden – an einem Ort.
OpenFlags
OpenFlags ist ein Open-Source, self-hosted Feature-Flag-System für progressive Delivery: lokale Evaluation in App-SDKs und ein simples Control-Plane für gezielte Rollouts.
skills-janitor
skills-janitor prüft, verfolgt die Nutzung und vergleicht deine Claude Code Skills mit neun Slash-Command-Aktionen – ohne Abhängigkeiten.
Rectify
Rectify ist eine All-in-One-Operations-Plattform für SaaS: Monitoring, Analytics, Support, Roadmaps, Changelogs und Agent-Management in einer visuellen Workspace – steuerbar per Konversation.
GitBoard
GitBoard ist eine native macOS-Menüleisten-App für GitHub Projects: Kanban-Board ansehen, nach Status filtern, Issues suchen sowie erstellen oder zuweisen.
Studio CLI
Mit dem Studio CLI steuern Sie WordPress Studio-Funktionen per Terminal: lokale Studio-Sites verwalten, Vorschau-Preview-Sites erstellen/ändern/löschen.