ForHosting KIT · Strumenti per sviluppatori

Estrarre nomi e tipi delle variabili GraphQL

Incolli un documento GraphQL e ottenga le variabili dichiarate per ogni operazione: FindUser dichiara id come ID!, filters come [UserFilter!] e limit come Int, e Rename dichiara id e name, cinque variabili in tutto. Prima viene verificata la sintassi. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto

Questo estrattore legge un documento GraphQL eseguibile, ne controlla la sintassi ed elenca le variabili dichiarate da ogni query, mutazione o sottoscrizione. Il risultato conserva il genere e il nome facoltativo dell’operazione, oltre al nome e alla notazione esatta del tipo di ogni variabile, comprese liste e indicazioni non nulle. È utile per generare moduli, revisionare operazioni client, documentare integrazioni o controllare una query prima dell’esecuzione.

Distingua le dichiarazioni dagli utilizzi

Le variabili GraphQL compaiono come dichiarazioni, per esempio <code>$id: ID! </code>, accanto all’operazione e come riferimenti, per esempio <code>user(id: $id)</code>, nella selezione. Questa capacità restituisce solo le dichiarazioni e le raggruppa sotto la query, mutazione o sottoscrizione proprietaria.

Operazioni diverse possono quindi dichiarare lo stesso nome senza essere unite. La notazione viene preservata: <code>String</code>, <code>ID! </code> o <code>[ID!]!

</code>. Valori predefiniti e direttive vengono analizzati per verificare la sintassi, ma non appaiono nel risultato. Anche i frammenti vengono controllati, senza produrre record perché non dichiarano variabili di operazione. Una query anonima abbreviata compare senza nome e con un elenco vuoto.

Integri il risultato strutturato

Ogni operazione indica la propria categoria, include il nome se presente e contiene <code>variables</code> con record <code>name</code> e <code>type</code>. La struttura è adatta a generare editor, confrontare operazioni versionate, produrre tabelle o rilevare nuovi input obbligatori. La separazione evita falsi conflitti tra nomi ripetuti.

L’input è limitato a 200,000 caratteri per mantenere finita l’elaborazione. In caso di sintassi errata viene indicata la posizione approssimativa.

Creare un modulo per le variabili

Legga le dichiarazioni e generi i campi corretti prima di raccogliere i valori di esecuzione.

Revisionare query persistite

Confronti nomi e tipi GraphQL esatti quando cambia un’operazione versionata.

Documentare operazioni client

Trasformi un documento con più operazioni in un inventario raggruppato.

Sono inclusi gli utilizzi delle variabili?

No. Sono restituite solo le dichiarazioni; i riferimenti non costituiscono nuove dichiarazioni.

La notazione di liste e valori non nulli viene conservata?

Sì. ID!, [String!] e [ID!]! mantengono la notazione GraphQL completa.

Sono ammessi più operazioni e frammenti?

Sì. Le operazioni restano ordinate; i frammenti sono controllati senza aggiungere dichiarazioni.

Controlla la query rispetto ai tipi del mio server?

No. Verifica solo che il documento sia GraphQL valido e legge le dichiarazioni. Sapere se il server offre un certo dato o se il tipo di una variabile si adatta a un argomento richiede la definizione dei tipi del server, in un passaggio separato.

I valori predefiniti vengono restituiti con le variabili?

No. Valori predefiniti e direttive vengono letti per assicurarsi che il documento sia ben formato, ma il risultato resta concentrato su una sola cosa: il nome di ogni variabile e il suo tipo dichiarato.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/dev/graphql-query-variables-extract

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/dev/graphql-query-variables-extract \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"query FindUser($id: ID!, $withPosts: Boolean = false) { user(id: $id) { name posts @include(if: $withPosts) { title } } }"}'
{
  "query": "query FindUser($id: ID!, $withPosts: Boolean = false) { user(id: $id) { name posts @include(if: $withPosts) { title } } }"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.graphql_query_variables_extract",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

max_chars200000
HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Controlli la sintassi in modo deterministico

Rifiuta stringhe non terminate, numeri errati, caratteri inattesi, selezioni vuote e definizioni incomplete. Il risultato può quindi proteggere una fase iniziale della build. Un’espressione regolare diventa inaffidabile con commenti, stringhe, stringhe a blocchi, liste annidate, oggetti predefiniti, direttive, frammenti, alias e operazioni multiple. Questo parser tokenizza l’intero documento e segue la grammatica eseguibile GraphQL. Non vengono consultati rete o schema. Lo strumento non stabilisce se un campo esista sul server, se un tipo corrisponda a un argomento o se siano rispettate regole dipendenti dallo schema. Lo usi per sintassi e individuazione delle dichiarazioni, poi esegua separatamente la validazione rispetto allo schema disponibile.

Integri il risultato strutturato

La risposta contiene l’array <code>operations</code> nell’ordine originale e il totale <code>variable_count</code>. Non viene eseguita alcuna query e non servono schema, intestazioni, credenziali o valori. Lei può incollare il documento nel browser oppure chiamare l’API a $0.002 per elemento.

La query GraphQL viene eseguita?

No. Il documento viene analizzato localmente senza contattare endpoint GraphQL.

I campi vengono validati rispetto al mio schema?

No. La sintassi è verificata senza schema; esistenza e compatibilità richiedono un’altra fase.

Quanto costa una chiamata API?

Ogni elemento costa $0.002. La versione web esegue localmente lo stesso parser.

Leggi la documentazione completa del KIT →