永続化された GraphQL クエリをトラブルシューティングする troubleshoot-persisted-graphql-queries
アクションセンターには、GraphQL 永続クエリエラー のアラートが含まれています。これは、GraphQL 永続化クエリのいずれかがエラーをスローするたびに通知されることを意味します。
このような問題のトラブルシューティングと解決に役立つよう、このページでは、最も一般的 な失敗の原因と、その修正方法に関する手順について説明します。
コンテンツフラグメントモデルの変更 changes-to-content-fragment-model
GraphQL で永続化されたクエリは、古い GraphQL タイプに基づいている場合に失敗する可能性があります。多くの場合、参照元のコンテンツフラグメントモデルの変更が原因です。
このようなエラーは、様々な理由で発生する可能性があります。例えば、コンテンツフラグメントモデルの作成者が次のような場合があります(リストがすべてではありません)。
- フィールドを削除したり、名前を変更します
- フラグメント参照に使用できるモデルを定義する モデルタイプ を更新します
- 他のモデルが参照しているモデルを非公開にします
このようなエラーに対処するには、次のいずれかを実行する必要があります。
- コンテンツフラグメントモデルの変更に対応できない永続クエリを更新する
- 問題が発生したモデルに対する変更を元に戻す
GraphQL エンドポイントが設定されていません graphql-endpoint-not-configured
永続クエリが情報 No suitable endpoint found
と共に 404
のエラーコードを返す場合は、AEM 環境に GraphQL エンドポイントが設定されていません。
これを修正するには、AEM の GraphQL エンドポイントを管理でエンドポイントを有効にして公開する手順に従います。
GraphQL の永続クエリ URL にパスがありません missing-path-query-url
永続クエリが情報 Suffix: '/' does not contain a path
と共に 400
のエラーコードを返す場合は、GraphQL サーブレットがパスのサフィックスなしで呼び出されています。
このパターンは /graphql/execute.json/thePath
です。
IP の許可リストによりブロックされました blocked-due-to-ip-allow-list
この場合、クエリは 405
エラーコードを返します。
このようなエラーは GraphQL に固有のものではありません。ナレッジベース記事 405 エラー許可されていませんを参照してください。
Dispatcher によりブロックされました blocked-dispatcher
POST
リクエストの公開時に GraphQL エンドポイントが 404
エラーを返した場合、GraphQL クエリが Dispatcher レベルでブロックされており、エンドポイントを手動で有効にする必要があることを意味します。
デフォルトでは当てはまりませんが、カスタム Dispatcher 設定が原因で、この問題が発生する可能性があります。詳しくは、Dispatcher - AEM ヘッドレスを使用したエンドポイントの設定を参照してください。