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 のヘッドレスコンテンツ管理に関する基本的な内容を説明しました。使用可能な機能を包括的に理解するために、さらに多くのリソースを使用して、さらに深く掘り下げることができます。