フロントエンドエンジニアの間ではGraphQLはもはや必須スキル?
ということでGraphQLを入門
### GraphQLとは
– APIのためのクエリ言語(Graph Query Language)
– SQLのようなクエリでAPIを定義する
– REST APIとはエンドポイントが異なる(特定の値を取得するために、余分なデータも取得されてしまう、あるいは、1つのエンドポイントでは必要なデータが取得できない といった問題を解決できる 必要なデータだけ要求する)
– 型付スキーマで記述する
– GraphQLのSubscriptionsはWebSocketを使用しているので、簡単にリアルタイム通信ができる
– Client側がGraphQL Query Languageで、Server側がGraphQL Schema Language
注) サーバ側とクライアント側 両方を学ぶ必要がある
### GraphQL Query Language(GET)
Githubの例: https://docs.github.com/en/graphql/overview/explorer
query {
viewer {
login
}
}
query {
user(login: "hpscript"){
id
name
url
}
}
おおおお、これは凄い
POST, PUT, DELETEはmutationを使用する
“!”は必須という意味
type User {
login: String!
id: String!
name: String!
age: Int
bio: String
url: String
}
実際に動かしてみないとわからないね