Introspezione JSON da GraphQL — Numio
Converte GraphQL SDL nel risultato JSON di una query di introspezione standard utilizzando @graphql-codegen/introspection. L'output contiene un oggetto __schema di livello superiore con i tipi root, tutti i tipi inclusi quelli incorporati e le direttive.
Produzione di uno schema.json per strumenti che prevedono l'introspezione JSON anziché SDL, come alcuni plug-in IDE e generatori di client.
Quando usarlo
- Produzione di uno schema.json per strumenti che prevedono l'introspezione JSON anziché SDL, come alcuni plug-in IDE e generatori di client.
- Ispezione del modo in cui il tipo di un campo viene racchiuso nei tipi NON_NULL e LIST nei dati di introspezione.
Come si usa
- Incolla lo schema SDL nell'editor dello schema GraphQL.
- Attendi JSON nel pannello Introspezione JSON; anche uno schema a un campo produce circa mille righe.
- Copia o scarica JSON e salvalo, ad esempio come schema.json.
Schema GraphQL
type Query {
hello(name: String): String!
}Introspezione JSON
{
"__schema": {
"queryType": {
"name": "Query"
},
"mutationType": null,
"subscriptionType": null,
"types": [
{
"kind": "OBJECT",
"name": "Query",
"description": null,
"fields": [
{
"name": "hello",
"description": null,
"args": [
{
"name": "name",
"description": null,
"type": {
"kind": "SCALAR",
"name": "String",
"ofType": null
…Dettagli e limiti
Gli scalari incorporati (String, Boolean), i tipi di introspezione (__Schema, __Type, __Field e altri) e le direttive integrate (include, skip, deprecated, specifiedBy) sono sempre inclusi.
Il JSON non è racchiuso in una chiave "data"; inizia direttamente con __schema.
La conversione viene eseguita in un Web Worker nel tuo browser. Questa pagina richiede solo uno schema; non interroga un endpoint attivo.
FAQ
Posso ottenere l'introspezione JSON da uno URL?
No. La pagina converte SDL che incolli; non invia query di introspezione a un server. Esporta prima SDL dal tuo server, quindi incollalo qui.
Sono inclusi i campi obsoleti?
Sì. Ogni campo e valore enum è elencato con isDeprecated e deprecationReason, quindi i campi contrassegnati con @deprecated vengono visualizzati con isDeprecated: true.
Perché l'output è così grande per uno schema piccolo?
I risultati dell'introspezione descrivono l'intero sistema di tipi, inclusi gli scalari incorporati, i metatipi di introspezione e le definizioni delle direttive, non solo i tuoi tipi.