REST-API: Anleitungen und Praxiswissen | Seite 13 | mironsoft Blog
REST-API
-
01.03.2025
Der native SoapClient von PHP und aehnliche proprietaere Legacy-Schnittstellen sind mit klassischen PHPUnit-Mocks nur schwer zu handhaben, weil sie Netzwerkverbindungen im Konstruktor aufbauen und final deklarierte Methoden mitbringen. Ein duennes Wrapper-Interface loest genau dieses Problem und macht ERP- oder Warenwirtschafts-Anbindungen in Magento-Projekten sauber testbar.
-
26.02.2025
Schlechte API-Fehlerantworten kosten Entwicklungszeit – auf beiden Seiten. Wenn Consumers nur {"error": "Something went wrong"} bekommen, können sie weder programmatisch reagieren noch gezielt debuggen. RFC 9457 Problem Details for HTTP APIs, maschinenlesbare Error Codes, strukturierte Feldfehler und Correlation IDs machen Fehlerfälle zu einem First-Class-Feature der API – nicht zu einem Afterthought.
-
21.02.2025
Eine REST-API, die im Büro über eine stabile WLAN-Verbindung getestet wurde, verhält sich auf einem Smartphone in einem Zug mit wechselnder Netzabdeckung fundamental anders. Große Payloads, viele einzelne Requests und fehlendes Offline-Verhalten, die im Büro kaum auffallen, werden auf mobilen Netzwerken zu echten Nutzungsproblemen, die gezielte, mobile-spezifische API-Designentscheidungen erfordern.
-
15.02.2025
Alternative Formate und Massenoperationen stellen REST-APIs vor echte Designprobleme: Wann Content-Negotiation, wann eigene Endpunkte? Wie werden tausende Datensätze performant gestreamt? Wie kommuniziert eine Bulk-Operation partielle Fehler klar genug, damit Clients sinnvoll reagieren können?
-
13.02.2025
Ein Backoffice-API und eine Public API teilen HTTP als Transport – aber ihre Anforderungen an Stabilität, Abwärtskompatibilität, Sicherheit und Fehlermodelle unterscheiden sich so fundamental, dass ein einheitliches Design zwangsläufig eines von beidem schlechter macht.
-
12.02.2025
Ein zu freizügig gesetzter Access-Control-Allow-Origin-Header hebt genau den Browserschutz auf, den die Same-Origin Policy eigentlich garantiert. Dieser Artikel erklärt Preflight-Requests, die gefährliche Kombination aus Wildcard und Credentials, Origin-Reflection als häufigsten Fehler und wie eine saubere, server-seitige Allowlist für Magento-APIs hinter CDN und Varnish zuverlässig funktioniert.
-
11.02.2025
Die häufigste Ursache für langsame REST APIs ist nicht der Server, sondern die übertragene Datenmenge. Projection reduziert die Response-Größe auf das, was der Client tatsächlich braucht. Streaming überträgt große Datasets ohne Speicher-Overhead. Compression halbiert die Netzwerklast. HTTP-Caching eliminiert redundante Requests vollständig.
-
09.02.2025
Unlimitierte APIs sind ein offenes Tor für Missbrauch, Scraping und versehentliche Overload-Situationen durch fehlerhafte Clients. Dieser Artikel zeigt, wie Fixed Window, Sliding Window und Token Bucket Algorithmen funktionieren, wie Rate Limits pro IP-Adresse oder API-Key sinnvoll konfiguriert werden und wie sich Gateway-Layer und Anwendungslogik in Magento-Umgebungen mit Redis kombinieren lassen, um Systeme stabil und fair zu halten.
-
03.02.2025
Symfony als API Gateway buendelt Routing, Authentifizierung, Rate Limiting und Fehlerbehandlung fuer eine Microservice Landschaft an einer einzigen Stelle, statt jeden Backend Service diese Aufgaben einzeln loesen zu lassen. Dieser Artikel zeigt konkret, wie HttpClient, Security und Rate Limiter zusammenspielen, und wie Circuit Breaker und Correlation IDs kaskadierende Ausfaelle verhindern.
-
27.01.2025
Bei einer Bibliothek entscheidet ein Entwickler beim Release, ob eine Änderung breaking ist, und setzt die Versionsnummer entsprechend hoch. Bei einer REST-API reicht das nicht: Der Vertrag zwischen Server und Dutzenden unbekannten Clients ändert sich, sobald sich die OpenAPI-Spezifikation ändert, und niemand im Team kann von Hand überblicken, welche der zehn parallel laufenden Feature-Branches gerade ein Pflichtfeld entfernt. Dieser Artikel zeigt, wie man Breaking Changes aus OpenAPI-Diffs automatisiert erkennt und den Versionssprung per CI erzwingt, statt ihn dem guten Willen einzelner Entwickler zu überlassen.