GraphQL-アプリケーションコンポーネント

この章では、さまざまなGraphQLコンポーネントとそれらが相互に通信する方法について説明します。アプリケーションコンポーネント全体は、次のように区別できます。

  • サーバー側コンポーネント
  • クライアント側のコンポーネント

サーバー側コンポーネント

GraphQLサーバーは、サーバー側のコアコンポーネントを形成し、GraphQLクライアントアプリケーションからのクエリを解析できるようにします。Apollo Serverは、GraphQL仕様の最も一般的に使用される実装です。その他のサーバープログラミングコンポーネントには、次のものがあります。

シニア番号 サーバーの要点と説明
1

Schema

GraphQLスキーマは、GraphQLサーバーの実装の中心であり、それに接続するクライアントが利用できる機能を記述します。

2

Query

GraphQLクエリは、データベースまたはレガシーAPIからデータを取得するためのクライアントアプリケーションリクエストです。

3

Resolver

リゾルバーは、GraphQL操作をデータに変換するための指示を提供します。リゾルバー関数を定義することにより、クエリをデータに解決します。

クライアント側のコンポーネント

以下にクライアント側のコンポーネントを示します-

シニア番号 ツールと説明
1

GraphiQL

GraphQLクエリとミューテーションを編集およびテストするためのブラウザベースのインターフェイス。

2

ApolloClient

GraphQLクライアントアプリケーションを構築するための最良のツール。すべてのJavaScriptフロントエンドとうまく統合します。

次の図は、 Client-Server architecture。Webサーバーは、NodeJとExpressフレームワーク上に構築されています。ReactJSアプリケーション(Apolloクライアントライブラリを使用して構築)またはGraphiQLブラウザーアプリケーションによってApolloGraphQLサーバーにリクエストが行われます。クエリは解析され、サーバーで定義されたスキーマに対して検証されます。リクエストスキーマが検証に合格すると、関連するリゾルバー関数が実行されます。リゾルバーには、APIまたはデータベースからデータをフェッチするためのコードが含まれます。