スキーマ は、SDL (Schema Definition Language) で記述された GraphQL API の型付き契約です。すべての型、すべてのフィールド、そして特別な ルート型 — Query (読み取り)、Mutation (書き込み)、そして任意で Subscription (ライブ) — を宣言します。サーバーはスキーマに一致しないリクエストをすべて拒否します。
スキーマ は、SDL (Schema Definition Language) で記述された GraphQL API の型付き契約です。すべての型、すべてのフィールド、そして特別な ルート型 — Query (読み取り)、Mutation (書き込み)、そして任意で Subscription (ライブ) — を宣言します。サーバーはスキーマに一致しないリクエストをすべて拒否します。
Int、Float、String、Boolean、ID があります。DateTime のようなカスタムスカラーを定義することもできます。scalar DateTime # a custom scalar
type User { # an object type
id: ID! # ! means non-null (always present)
name: String!
createdAt: DateTime!
posts: [Post!]! # a list of Post objects, non-null list of non-null items
}
type Post {
id: ID!
title: String!
author: User! # points back to User -> a relationship
}
type Query { # root type: the entry points for reads
user(id: ID!): User # a field with an argument; returns a User (nullable)
}
! は 非 null を表します。[Post!]! は要素が非 null である非 null のリストです。引数 (id: ID!) によってフィールドをパラメータ化できます。
スキーマは唯一の信頼できる情報源であり、検証、ドキュメントの自動生成、クライアントのコード生成を駆動します。! とリスト型を正しく読み取れることはジュニアのスクリーニングでよく確認される点であり、null 許容性の判断はクライアントがエラーをどう扱うかを左右します。
ジュニアからシニアまで、詳細な回答付きのIT面接質問ライブラリ。
寄付する