GraphQL-Abfrageprüfung
Prüfe GraphQL-Abfragen, Mutationen und Fragmente vor dem Senden gegen dein Schema. Füge SDL oder Introspektions-JSON ein und sieh unterstützte Validierungsfehler mit Zeile und Spalte.
Akzeptiert bis zu 200.000 Zeichen für Operationen, ein Schema mit bis zu 1.000.000 Zeichen und Variablen mit bis zu 200.000 Zeichen. Dokumente sind auf 100.000 Tokens und 64 Verschachtelungsebenen begrenzt, Schemas auf 10.000 Typen. Die Prüfung läuft in deinem Browser in einem Hintergrund-Worker; nichts wird an einen GraphQL-Server gesendet. Downloads: ein JSON-Bericht und eine CSV-Fehlerliste. Abfragen, Mutationen, Abonnements und Fragmente. Füge das Schema in das Feld „Schema“ ein. Bis zu 200.000 Zeichen. Prüfe die Einstellungen vor dem Start.
Dein Ergebnis
GraphQL-Abfrageprüfung
- Füge deine GraphQL-Operationen und Fragmente in das Hauptfeld ein.
- Füge das Schema als SDL oder Introspektions-JSON in das Feld „Schema“ ein.
- Ergänze bei Bedarf die Variablen als JSON-Objekt.
- Starte die Prüfung, prüfe jede verletzte Regel und lade den JSON- oder CSV-Bericht herunter.
Was du wissen solltest
Akzeptiert bis zu 200.000 Zeichen für Operationen, ein Schema mit bis zu 1.000.000 Zeichen und Variablen mit bis zu 200.000 Zeichen. Dokumente sind auf 100.000 Tokens und 64 Verschachtelungsebenen begrenzt, Schemas auf 10.000 Typen. Die Prüfung läuft in deinem Browser in einem Hintergrund-Worker; nichts wird an einen GraphQL-Server gesendet. Downloads: ein JSON-Bericht und eine CSV-Fehlerliste.
Was geprüft wird
Der Validator prüft unterstützte Regeln für Felder und Rückgabetypen, Blatt- und Objektauswahlen, Argumente und erforderliche Argumente, Fragmentnamen, Ziele, Zyklen und ungenutzte Fragmente, Werte und Eingabeobjekte einschließlich @oneOf, Direktiven und ihre Positionen sowie Variablendefinitionen, Verwendung und Typen. Wenn du Variablen hinzufügst, werden auch ihre Werte gegen die deklarierten Typen geprüft. Die Grenzen unten beschreiben, wo diese eigene Implementierung endet.
So funktioniert es
Happytails.ai verwendet einen eigenen begrenzten GraphQL-Parser und -Validator, nicht graphql-js. Konflikte von Antwortnamen werden über Fragmente und zusammengeführte untergeordnete Auswahlen hinweg verglichen, einschließlich Rückgabeform, Argumenten und sich gegenseitig ausschließenden Objektzweigen. __schema und __type benötigen eine Auswahlmenge, ihre Introspektions-Unterfelder werden jedoch nicht validiert. Dies ist keine vollständige GraphQL-Implementierung.
Den Bericht lesen
Jeder Fehler nennt die Regel, eine kurze Erklärung sowie Zeile und Spalte in deinen Operationen. Das Schema selbst muss verwendbar sein: Ein fehlender Query-Typ oder ein Feldverweis auf einen undefinierten Typ stoppt die Prüfung mit einer Meldung statt einer Liste.