Das Plugin konfigurieren
Das Plugin konfigurierenLow-Level-Bearbeitung von Persisted Queries aktivieren

Low-Level-Bearbeitung von Persisted Queries aktivieren

In GraphQL sind Direktiven Funktionen, die es ermöglichen, das Ergebnis eines Felds zu verändern. Zum Beispiel wandelt eine Direktive @strUpperCase den Wert des Felds in Großbuchstaben um.

Es gibt 2 Arten von Direktiven: solche, die auf das Schema angewendet werden und immer bei jeder Query ausgeführt werden; und solche, die auf die Query angewendet werden – vom Nutzer oder der Anwendung auf der Client-Seite.

Gato GraphQL implementiert zahlreiche Funktionen über Direktiven, die auf das Schema angewendet werden. Die entsprechenden Direktiven werden der Query über eine Benutzeroberfläche hinzugefügt.

Das ist zum Beispiel bei Cache Control und Access Control der Fall. Cache Control funktioniert, indem die Direktive @cacheControl auf das Schema angewendet wird, und wird vom Plugin über die Cache Control List-Benutzeroberfläche verwaltet:

Definition einer Cache-Control-Richtlinie

Einige Beispiele für Schema-Direktiven, die den Access Control regeln:

  • @disableAccess
  • @validateIsUserLoggedIn
  • @validateIsUserNotLoggedIn
  • @validateDoesLoggedInUserHaveAnyRole.
  • @validateDoesLoggedInUserHaveAnyCapability

Low-Level-Bearbeitung aktivieren

Das Modul "Low-Level Persisted Query Editing" ist standardmäßig deaktiviert. Wenn es aktiviert ist, werden alle Direktiven, die auf das Schema angewendet werden sollen, im GraphiQL-Editor beim Bearbeiten von Persisted Queries verfügbar.

Schema-Direktiven

So kannst du die Schema-Direktiven direkt in der GraphQL-Query beim Bearbeiten der Persisted Query hinzufügen und die Benutzeroberfläche überspringen.

Zum Beispiel kann Cache Control direkt in der Persisted Query definiert werden, indem die Direktive @cacheControl mit dem Argument maxAge auf das Feld gesetzt wird:

Schema-Direktiven im Editor für Persisted Queries verfügbar