AEM Assets REST API を使用して、コンテンツフラグメントと、コンテンツフラグメントコンテンツのヘッドレス配信用の GraphQL API を管理する方法について説明します。
コンテンツフラグメントはいくつか作成したので、AEM API を使用してそれらをヘッドレスで配信できます。
このガイドの残りの部分では、GraphQL へのアクセスとコンテンツフラグメントの配信について説明します。
情報アーキテクトは、コンテンツを配信するために、チャネルエンドポイント用のクエリを設計する必要があります。一般に、これらのクエリは、モデルやエンドポイントごとに 1 回だけ作成する必要があります。この「はじめる前に」ガイドの目的上、1 つだけ作成します。
AEMにログインし、 GraphiQL インターフェイス:
http://<host>:<port>/aem/graphiql.html
GraphiQL は、GraphQL のブラウザー内のクエリエディターです。クエリを構築して、コンテンツフラグメントを取得し、それらを JSON としてヘッドレスに配信できます。
左側のパネルでは、クエリを作成できます。
右側のパネルに結果が表示されます。
クエリエディターは、コード補完機能とホットキーを備えており、クエリを簡単に実行できます。
作成したモデルが person
で firstName
、lastName
、position
の各フィールドを持つ場合は、単純なクエリを構築して、コンテンツフラグメントのコンテンツを取得できます。
query
{
personList {
items {
_path
firstName
lastName
position
}
}
}
左側のパネルにクエリを入力します。
次をクリック: クエリを実行 (右向き矢印)アイコンをクリックするか、 Ctrl-Enter
ホットキーと結果は、右側のパネルに JSON として表示されます。
以下をクリックします。
ページの右上にあるドキュメント。文脈依存ドキュメントが表示され、独自のモデルに適合するクエリの構築に役立ちます。
上部のツールバーにある履歴。以前のクエリが表示されます。
名前を付けて保存 および 保存 をクリックしてクエリを保存します。保存後、クエリを一覧表示してから取得できます。 永続クエリ パネルと 公開.
GraphQL を使用すると、特定のデータセットや個々のデータオブジェクトだけでなく、オブジェクトの特定の要素、ネストされた結果、クエリ変数のオファーサポートなどをターゲットできる構造化クエリが可能です。
GraphQL では、反復的な API リクエストと過剰な配信を回避でき、代わりに単一の API クエリに対するレンダリングに必要なものを一括配信できます。結果の JSON を使用して、他のサイトやアプリにデータを配信できます。
これで作業は完了です。AEM のヘッドレスコンテンツ管理に関する基本的な内容を説明しました。もちろん、利用可能な機能の包括的な理解を深めるためのリソースは他にもたくさんあります。