Frage: Gibt es eine Möglichkeit, einige GraphQL-Typen/Abfragen/Mutationen/Subskriptionen nachzuahmen, während der Rest an einen vorhandenen GraphQL-Server weitergeleitet wird?Wie kann man einige GraphQL-Anfragen "nachahmen", während der Rest an einen vorhandenen GraphQL-Server weitergeleitet wird?
Situation: Die Anwendung hat ein Schema, von dem ein Teil auf dem Server implementiert wurde und der Rest noch zu entwickeln ist. Die Arbeit am Frontend schafft manchmal eine Abhängigkeit vom Backend-Team, das ich ansprechen möchte.
Ziel-Setup: Das betreffende Setup sollte alle Anfragen an den vorhandenen GraphQL-Server "weiterleiten", mit Ausnahme der, die ich verspottet habe. Für Teile, die auf dem Server implementiert wurden (z. B. Benutzerauthentifizierung), wird der tatsächliche Server verwendet, während für Teile, die nicht auf dem Server implementiert wurden, gespottete Antworten verwendet werden können.
Ich habe versucht zu suchen und während ich Wege zum Erstellen eines mock GraphQL-Server gefunden, konnte ich nicht finden, was es so tut.
Ich bin offen für das Schreiben von Code, um dies zu ermöglichen, aber da ich neu bei GraphQL bin, dachte ich mir, dass ich zuerst nach hilfreichen Hinweisen fragen würde, wie ich das angehen könnte.
FWIW, verwendet das Frontend Apollo GraphQL (mit React) und dem Back-End verwendet Wermut (mit Elixir/Phoenix)
Verschmelzen zweier GraphQL Servern "Schema Stitching" bezeichnet. Bevor Sie damit beginnen (Spoileralarm: es ist nicht so einfach) werfen Sie einen Blick auf [graphql-faker] (https://github.com/APIs-guru/graphql-faker). Es kann 90% von dem abdecken, was Sie für 10% der Anstrengung benötigen. Statt Stitching können Sie auch versuchen, nur die GraphQL-Schnittstelle zu implementieren und gefälschte Resolver hinzuzufügen. In unserem Server verwenden wir gefälschte Modelle, die an JSON-Daten arbeiten, um _some_ API so schnell wie möglich an das Frontend zu liefern. – Herku
@Herku danke! graphql-faker sieht hilfreich aus – Kul