---
title: "JSSアプリにおける接続されたGraphQL"
slug: "connected-graphql-in-jss-apps"
abstract: "GraphQLエンドポイントを非同期でクエリし、GraphQLのミューテーションやサブスクリプションを使用します。"
---
# JSSアプリにおける接続されたGraphQL

Connected GraphQLでは、JSSアプリがSitecore GraphQLエンドポイントに直接HTTPリクエストを送信します。このモードは、どのJavaScriptアプリケーションでGraphQL APIを使うのと同じで、JSS特有ではありません。

[Apollo GraphQL Client](https://www.apollographql.com/)のようなJavaScript GraphQLクライアントの利用をお勧めします。

以下の場合に接続型GraphQLの使用を推奨します:

-   ページレイアウトがレンダリングされた後や、ルート変更以外のアプリの状態変化に応じて非同期でデータを読み込む必要があります。
-   コンポーネントはミューテーション(更新)やサブスクリプション(リアルタイムデータ)を実行しなければなりません。
-   クエリや状態のライフサイクルを完全にコントロールしたいのです。例えば、Reduxや [apollo-link-state](https://github.com/apollographql/apollo-link-state) パッケージとの統合などです。

以下の場合、接続型GraphQL*の使用を避ける* ことをお勧めします:

-   コンポーネントはコンテンツテンプレートのフィールドデータのみを使用します。デフォルトのレイアウトデータ出力だけで十分なので、追加のGraphQLクエリは必要ありません。
-   GraphQLクライアントライブラリの追加ページ重みは望ましくありません。

> !注GraphQLエンドポイントを設定すると、接続されたGraphQLコンポーネントのデータ出力はそのソースに紐付けられます。出力は編集モードと通常モードの両方で同一です。