AEM Headless快速设置使用AEM Headless示例项目(WKND Site示例项目)中的内容以及一个通过AEM Headless GraphQL API使用内容的示例React应用程序(SPA),帮助您实际操作Headless。 本指南使用 AEMAS A CLOUD SERVICESDK.
应在本地安装以下工具:
此设置使用 AEMAS A CLOUD SERVICESDK 以探索AEM GraphQL API。 此部分提供了有关安装AEM SDK并在创作模式下运行该软件的快速指南。 有关设置本地开发环境的更详细指南 可在此处找到.
也可以在本教程之后使用 AEMas a Cloud Service环境. 在本教程中,还包含有关使用云环境的其他说明。
导航到 软件分发门户 > AEMas a Cloud Service 并下载最新版本的 AEM SDK.
解压缩下载内容并复制快速入门jar (aem-sdk-quickstart-XXX.jar
)到专用文件夹,即 ~/aem-sdk/author
.
将jar文件重命名为 aem-author-p4502.jar
.
此 author
名称指定快速入门jar以创作模式启动。 此 p4502
指定快速入门在端口4502上运行。
要安装和启动AEM实例,请在包含jar文件的文件夹下打开命令提示符,然后运行以下命令:
$ cd ~/aem-sdk/author
$ java -jar aem-author-p4502.jar
提供管理员密码作为 admin
. 可接受任何管理员密码,但建议使用 admin
本地开发,减少重新配置的需要。
当AEM服务完成安装时,应打开一个新的浏览器窗口,网址为 http://localhost:4502.
使用用户名登录 admin
和AEM初始启动期间选择的密码(通常为 admin
)。
示例内容来自 WKND引用站点 用于加速教程。 WKND是一个虚构的生活风格品牌,通常与AEM培训一起使用。
WKND站点包含公开 GraphQL端点. 在实际的实施中,请按照文档记录的步骤执行 包含GraphQL端点 在您的客户项目中。 A CORS 也已打包为WKND站点的一部分。 授予对外部应用程序的访问权限需要CORS配置,了解有关 CORS 可在下方找到。
下载适用于WKND站点的最新编译的AEM包: aem-guides-wknd.all-x.x.x.zip.
确保下载与AEMas a Cloud Service兼容的标准版本,并且 非 此 classic
版本。
从 AEM开始 菜单,导航到 工具 > 部署 > 包.
单击 上传包 并选择在之前步骤中下载的WKND包。 单击安装可安装软件包。
从 AEM开始 菜单,导航到 资产 > 文件 > WKND已共享 > 英语 > 冒险.
这是构成WKND品牌推广的各种冒险的所有资产的文件夹。 这包括传统媒体类型(如图像和视频)以及AEM特有的媒体(如 内容片段.
单击 怀俄明州下山滑雪 文件夹,然后单击 怀俄明州下坡滑雪内容片段 信息卡:
内容片段编辑器将在怀俄明州下山滑雪冒险中打开。
观察各种字段,例如 标题, 描述、和 活动 定义片段。
内容片段 是在AEM中管理内容的其中一种方式。 内容片段是可重复使用的、与呈现无关的内容,由结构化数据元素(如文本、富文本、日期或对其他内容片段的引用)组成。 稍后在快速设置中会更详细地探讨内容片段。
单击 取消 以关闭片段。 您可以随意导航到其他某些文件夹,并探索其他冒险内容。
如果使用Cloud Service环境,请参阅文档以了解如何 将代码库(如WKND引用站点)部署到Cloud Service环境.
本教程的目标之一是演示如何使用GraphQL API从外部应用程序使用AEM内容。 本教程使用示例React应用程序。 React应用程序有意设计得非常简单,以便专注于与AEM GraphQL API的集成。
打开新的命令提示符并从GitHub克隆示例React应用程序:
$ git clone git@github.com:adobe/aem-guides-wknd-graphql.git
$ cd aem-guides-wknd-graphql/react-app
在中打开React应用程序 aem-guides-wknd-graphql/react-app
在您选择的IDE中。
在IDE中,打开文件 .env.development
在 /.env.development
. 验证 REACT_APP_AUTHORIZATION
行被取消注释,并且文件声明以下变量:
REACT_APP_HOST_URI=http://localhost:4502
REACT_APP_GRAPHQL_ENDPOINT=/content/graphql/global/endpoint.json
# Use Authorization when connecting to an AEM Author environment
REACT_APP_AUTHORIZATION=admin:admin
确保 REACT_APP_HOST_URI
指向您的本地AEM SDK。 为了方便起见,此快速入门将React应用程序连接到 AEM创作. 作者 服务需要身份验证,因此应用程序使用 admin
建立其连接的用户。 将应用程序连接到AEM作者是开发过程中的一种常见做法,因为它有助于在不发布更改的情况下快速迭代内容。
在生产方案中,应用程序将连接到AEM Publish 环境。 有关更多详细信息,请参见 生产部署 部分。
安装和启动React应用程序:
$ cd aem-guides-wknd-graphql/react-app
$ npm install
$ npm start
新的浏览器窗口会自动打开应用程序 http://localhost:3000.
此时将显示AEM中的冒险内容列表。
单击其中一个冒险图像以查看冒险详细信息。 系统会向AEM发出请求,要求返回冒险的细节。
使用浏览器的开发人员工具检查 网络 请求。 查看 XHR 请求并观察多个GET请求 /graphql/execute.json/...
. 此路径前缀将调用AEM持久查询端点,使用前缀后的名称和编码参数选择要执行的持久查询。
在React应用程序运行时,对AEM中的内容进行更新,并查看更改是否反映在应用程序中。
导航到AEM http://localhost:4502.
导航到 资产 > 文件 > WKND已共享 > 英语 > 冒险 > 巴厘岛冲浪营.
单击 巴厘岛冲浪营 用于打开内容片段编辑器的内容片段。
修改 标题 和 描述 探险之旅。
单击 保存 以保存更改。
刷新React应用程序,网址为 http://localhost:3000 要查看您所做的更改,请执行以下操作:
打开 GraphiQL 导航到 工具 > 常规 > GraphQL查询编辑器
选择左侧的现有持久查询,然后运行它们以查看结果。
GraphiQL工具和GraphQL API是 稍后在教程中会更详细地探讨.
恭喜,您现在有一个外部应用程序正在使用GraphQL的AEM内容。 欢迎在React应用程序中检查代码,并继续尝试修改现有内容片段。