Variabili
Per evitare di codificare tutti i valori quando si lavora con GraphQL, l’API Explorer fornisce una sezione Variabili in cui è possibile aggiungere un oggetto JSON. Le chiavi di livello superiore dell’oggetto JSON sono rese disponibili come variabili che hanno nomi indicati da un segno di dollaro ($KEY_NAME). Ciò consente un’esperienza di sviluppo molto più piacevole durante la scrittura e il test di query, mutazioni e sottoscrizioni dinamiche.
Mutazione GraphQL
Sezione intitolata “Mutazione GraphQL”query MyQuery1 ($domain: String) { students( filter: { email: { contains: $domain } } ) { items { id firstName email } }}Variabili
Sezione intitolata “Variabili”{ "domain": "example.com"}
Dichiarare Variabili
Sezione intitolata “Dichiarare Variabili”Alcuni input dinamici potrebbero dover essere aggiunti quando invii una richiesta al tuo server GraphQL, mentre il documento dell’operazione rimane lo stesso. Queste sono le variabili della tua operazione. Le variabili devono essere argomenti tipizzati che vengono dichiarati sull’operazione GraphQL. Poiché GraphQL è tipizzato staticamente, è possibile convalidare se stai passando le variabili corrette.
I seguenti due esempi funzionerebbero insieme per interrogare un elenco di utenti con stato “Attivo” e i cui nomi iniziano con “M”.
Mutazione GraphQL
Sezione intitolata “Mutazione GraphQL”query MyQuery1($name_start: String, $status: Boolean) { students( filter: { firstName: { starts_with: $name_start }, isActive: { equals: $status } } ) { items { id firstName email } }}Variabili
Sezione intitolata “Variabili”{ "name_start": "M", "status": true}
Dichiarare Variabili Tipizzate
Sezione intitolata “Dichiarare Variabili Tipizzate”Le variabili non sono limitate ad essere singoli valori di input. Possono essere oggetti complessi con qualsiasi tipo dichiarato in un determinato spazio di lavoro - nativo o personalizzato. Ciò consente di passare dinamicamente cose come interi filtri, ordinamenti e molti altri come variabili.
Mutazione GraphQL
Sezione intitolata “Mutazione GraphQL”query MyQuery ( $filter: StudentsFilter $first: Int $orderBy: StudentsOrderBy) { students( filter: $filter first: $first orderBy: $orderBy ) { count items { id firstName lastName age } }}Variabili
Sezione intitolata “Variabili”{ "filter": { "email": { "contains": "example" }, "firstName": { "starts_with": "M" } }, "orderBy": { "lastName": "ASC"}, "first": 2}