Beispiele für GraphQL-Abfragen und Mutations
Hier findest du Beispiele für GraphQL-Abfragen und Mutationen, die du mit nur einem Click ausprobieren kannst. In der GraphiQL Oberfläche kannst du auch gerne die Abfragen abwandeln und ausprobieren. Die Datenbank des GraphQL Services wird regelmäßig zurückgesetzt, du kannst also mit Mutations die Daten verändern wie du möchtest.
1. Query Abfragen
1.1. Alle Objekte eines Typs anzeigen
Die Abfrage liefert eine Liste von Produkten mit deren Namen. Ebenso können die Methoden categories , customers , vendors und orders verwendet werden.
Query, welcher alle Produkte ausgibt
1.2. Objekte mit bestimmter ID ausgeben
Benutze wieder eine der oben angegebenen Methoden aber mit dem Argument id.
Query, welcher Produkt mit id 7 ausgibt
1.3. Auswahl der Subfields
Die zurückgelieferten Objekte sind JSON-Objekte beliebiger Komplexität. Felder der Objekte können wiederum JSON-Objekte mit eigenen Felder sein usw. Im Query kannst du angeben, welche dieser Fields und Subfields du anzeigen möchte. Besitzt ein Field Subfields, so musst du aus diesen auch eine Auswahl treffen, damit der Query funktioniert.
Query, der Preis und Namen zu einem Produkt anzeigt
Query liefert category und vendor des Produkts
1.4. Mehrfachverschachtelung von Subfields
Du kannst durch Auswahl von Subfields ziemlich tief verschachteln und auch Kreise von Subfields bilden.
Query mit Verschachtelung categories -> products -> vendor -> products
1.5. Filtern über Werte der Fields
Neben der id kannst du bei den Query-Methoden weitere Argumente angeben, um dann nur die Objekte zurückzugeben, welche in ihren Felder entsprechende Werte haben.
Query, welcher alle Vendor ausgibt die ein bestimmtes Produkt verkaufen
Query, welcher die Produkte ausgibt die den Preis 3.4 haben
Query, welcher Produkte mit Preis 1.1 und Kategorie 1 ausgibt
2. Anfragen vom Typ Mutation
Bei den bisherigen Abfragen startete durch Click auf "Anfrage absetzen" GraphiQL direkt die Abfrage. Bei den folgenden Mutations öffnet sich nur GraphiQL und du musst selbst noch die Abfrage durch Click auf das Pfeil-Symbol absenden.
2.1. Add Mutations
Neue Objekte der Obertypen kannst du mit den entsprechenden Add Mutations hinzufügen. Hierbei musst du alle Attribute des Objekts angeben.
Query, welcher Category mit id 6, name "Green Fruits" und den products 8, 2, 3 hinzufügt
2.2. Update Mutations
Ändert Objekt eines Typ mit angegebener id. Du kannst alle oder nur bestimmte Attribute ändern, je nachdem welche Argumente du übergibst. Du erhälst das Objekt so wie es nach der Änderung aussieht noch mal als Rückgabe.
Query, der name und products der Category mit id 1 ändert
2.3. Delete Mutations
Löscht Objekt mit angegebener id. Das gelöschte Objekt wird dir nochmal zurückgeliefert.
Query, der Category mit id 2 löscht