API-Integration
Frontend und Backend, die sich bei jeder Anfrage einig sind
Die meisten Integrationsfehler entstehen, weil Frontend und Backend sich über die Form der Daten uneinig sind. Wir generieren Frontend-Typen aus Ihren API-Verträgen (OpenAPI, GraphQL-Schemas oder Protobuf), validieren Antworten zur Laufzeit und führen Contract-Tests in der CI aus. Eine Backend-Änderung, die das Frontend kaputtmachen würde, lässt den Build scheitern, statt Nutzer zu erreichen.
Typen, die synchron bleiben
- Client-Code und Typen werden aus dem API-Vertrag generiert, nicht von Hand geschrieben.
- Antworten werden zur Laufzeit mit Schema-Bibliotheken wie Zod validiert, sodass unerwartete Daten am Rand der App abgefangen werden.
- Contract-Tests laufen in der CI gegen beide Seiten.
- In einem gemeinsamen Monorepo können Frontend und Backend dieselben Typdefinitionen direkt importieren.
Das richtige Protokoll für jede Aufgabe
| Protokoll | Wo wir es einsetzen |
|---|---|
| REST | Standardressourcen und öffentliche APIs |
| GraphQL | Screens, die Daten aus vielen Quellen kombinieren |
| gRPC-Web / Connect | Backends, die bereits gRPC nutzen, große Datenmengen oder Binärdaten |
| WebSockets / SSE | Live-Updates und Streaming-Antworten |
Bilder, Dateien und Binärdaten
Anwendungen, die viele Bilder oder Binärdaten bewegen, brauchen Sorgfalt. Für große Dateien nutzen wir aufgeteilte, fortsetzbare Uploads und streamen Downloads, statt sie vollständig zu laden. Base64-Kodierung bei der Übertragung vermeiden wir, da sie Dateien um etwa ein Drittel vergrößert. Content-Types und Zeichenkodierung werden korrekt gesetzt, damit Text und Binärdaten unversehrt ankommen.
Fehler, Wiederholungen und Speicher
- Timeouts und Abbruch bei jeder Anfrage, damit verlassene Screens ihre Anfragen beenden.
- Wiederholungen mit Backoff nur für sichere Operationen.
- Ausweichlösungen, wenn ein Dienst ausfällt: gecachte Daten, eine reduzierte Ansicht oder eine klare Meldung.
- Große Antworten werden paginiert oder gestreamt, und auf datenlastigen Screens gelten Speicherbudgets. Das zählt vor allem bei datenintensiven Anwendungen.
FAQ
Häufig gestellte Fragen
01Unser Backend hat keine API-Spezifikation. Können Sie trotzdem Typen generieren?
Wir können helfen, aus den bestehenden Endpunkten eine OpenAPI-Spezifikation zu schreiben, und daraus Typen generieren. Die Spezifikation wird dann auch für Ihr Backend-Team zu nützlicher Dokumentation.
Nächster Schritt
Beginnen Sie mit einem Review des Bestehenden
Senden Sie uns Ihr Repository oder einen Staging-Link. Wir melden uns mit den drei Änderungen, die den größten Unterschied für Ihre Release-Geschwindigkeit, Performance und Zuverlässigkeit machen würden.
