STERFIELD

2021/06/05

最近APIで使われるGraphQLについて調べてみました

最近APIで使われるGraphQLについて調べてみました

APIからデータを取得するとき、従来よく使われていたREST APIでは、取得するデータの種類の分、エンドポイント(アクセスするURL)やパラメータの設定が必要でした。
また、APIではJSONという階層構造を持ったデータ形式を使いますが、
REST APIでは取得するデータに必要のないデータが付随するなど、通信に無駄が生じてしまう場合も少なくありませんでした。

そうした中、JSONでのデータの受け渡しをより便利にするために誕生したのが GraphQL です。

例えば以下のようなデータがあったとします。

REST APIではここから user id 1のfavoritesを取得する場合に、例えば次のようなURLにアクセスします。

あるいは

など、取得する情報により、アクセスするURLが変わったりします。

更にここから得られるデータは以下のように返ってきたりします。

本来必要なデータはfavoriteのnameの一覧だけであったとしても、関係のないデータまで返ってきてしまいます。

GraphQLでは、以下のようなURLにアクセスし、

以下のようなqueryを投げます。

そうすると以下のようにデータが返ってきます。

必要なデータを同じURLに対してリクエストできるので、プログラムをより簡略化し、通信量を節約できます。

参考にさせていただいたサイト

Author Profile

著者近影

NINOMIYA

Webデザイナー兼コーダー出身のフロントエンド開発者です。 UXデザインやチーム開発の効率化など、勉強中です。

SHARE

合わせて読みたい