Aan de slagWat is schema-introspectie
Wat is schema-introspectie
Schema-introspectie is het mechanisme van GraphQL om informatie over het schema te verstrekken, die wordt opgehaald met dezelfde GraphQL-taal. Dankzij introspectie kunnen clients zoals GraphiQL en GraphQL Voyager ons helpen bij het werken met het GraphQL-schema.
Deze clients voeren altijd dezelfde introspectie-query uit om de volledige gegevens van het schema op te halen:
query IntrospectionQuery {
__schema {
queryType {
name
}
mutationType {
name
}
subscriptionType {
name
}
types {
...FullType
}
directives {
name
description
locations
args {
...InputValue
}
}
}
}
fragment FullType on __Type {
kind
name
description
fields(includeDeprecated: true) {
name
description
args {
...InputValue
}
type {
...TypeRef
}
isDeprecated
deprecationReason
}
inputFields {
...InputValue
}
interfaces {
...TypeRef
}
enumValues(includeDeprecated: true) {
name
description
isDeprecated
deprecationReason
}
possibleTypes {
...TypeRef
}
}
fragment InputValue on __InputValue {
name
description
type {
...TypeRef
}
defaultValue
}
fragment TypeRef on __Type {
kind
name
ofType {
kind
name
ofType {
kind
name
ofType {
kind
name
ofType {
kind
name
ofType {
kind
name
ofType {
kind
name
ofType {
kind
name
}
}
}
}
}
}
}
}