如何在 AEM Headless 中將您的應用程式和內容組合在一起 put-it-all-together

AEM Headless 開發人員歷程的這一部分中,了解如何使用 AEM 開發工具和 Headless SDK 將您的應用程式組合在一起。

到目前為止 story-so-far

在 AEM Headless 歷程的上一個文件「如何透過 AEM Assets API 更新您的內容」中,您已了解如何通過 API 更新 AEM 中現有的 Headless 內容,您現在應該:

  • 了解 AEM Assets HTTP API。

目標 objective

本文旨在透過以下方式幫助您了解如何將 AEM Headless 應用程式組合在一起:

  • 了解 AEM Headless SDK 和所需的開發工具
  • 設定本機開發執行階段以在上線前模擬您的內容
  • 了解 AEM 內容複製基本知識

AEM SDK the-aem-sdk

AEM SDK 用於建置和部署自訂程式碼。它是您在上線前開發和測試 Headless 應用程式所需的主要工具。它都包含下列成品:

  • Quickstart jar - 這是可執行的 jar 檔案,可用於設定編寫和發佈執行個體
  • Dispatcher 工具 - Dispatcher 模組及其對基於 Windows 和 Unix® 系統的相依性
  • Java™ API Jar - Java™ Jar/Maven 相依性公開了所有允許的 Java™ API,其可用於針對 AEM 進行開發
  • Javadoc jar - Java™ API jar 的 javadoc

AEM Headless SDK the-aem-headless-sdk

與 AEM SDK 不同,AEM Headless SDK 是一組程式庫,用戶端可以使用這些程式庫透過 HTTP 快速輕鬆地與 AEM Headless API 互動。

如需有關 AEM Headless SDK 的詳細資訊,請參閱此處文件

其他開發工具 additional-development-tools

除了 AEM SDK 之外,您還需要其他工具來協助您在本機開發和測試程式碼和內容:

  • Java™
  • Git
  • Apache Maven
  • Node.js 程式庫
  • 您選擇的 IDE

由於 AEM 是 Java™ 應用程式,因此您需要安裝 Java™ 和 Java™ SDK 以支援開發 AEM as a Cloud Service。

Git 是您用來管理原始檔控制系統和簽入對 Cloud Manager 的變更,然後將它們部署到生產執行個體的工具。

AEM 使用 Apache Maven 建置從 AEM Maven 專案原型產生的專案。所有主要的 IDE 都提供對 Maven 的整合支援。

Node.js 是 JavaScript 執行階段環境,用於處理 AEM 專案 ui.frontend子專案的前端資產。Node.js 與 npm 一起傳遞,是事實上的 Node.js 封裝管理員,用於管理 JavaScript 相依性。

AEM 系統元件一覽 components-of-an-aem-system-at-a-glance

接下來,讓我們看看 AEM 環境的組成部分。

完整的 AEM 環境由編寫、發佈和 Dispatcher 組成。這些相同的元件在本機開發執行階段中可用,以方便您在上線前預覽您的程式碼和內容。

  • 編寫服務 ​是內部使用者建立、管理和預覽內容的地方。

  • 發佈服務 ​被認為是「即時」環境,通常是一般使用者與其互動。內容在編寫服務上經編輯和核准後,將傳遞到發佈服務。AEM Headless 應用程式最常見的部署模式是讓應用程式的生產版本連接到 AEM Publish 服務。

  • Dispatcher 是靜態 Web 伺服器,增加了 AEM Dispatcher 模組。它快取發佈執行個體產生的網頁以提升效能。

本機開發工作流程 the-local-development-workflow

本機開發專案以 Apache Maven 為基礎建置,並使用 Git 進行原始檔控制。若要更新專案,開發人員可以使用偏好的整合式開發環境,例如 Eclipse、Visual Studio Code 或 IntelliJ 等。

若要測試 Headless 應用程式取用的程式碼或內容更新,您必須將更新部署到本機 AEM 執行階段,其中包括 AEM 編寫和發佈服務的本機執行個體。

請務必注意本機 AEM 執行階段每個元件之間的區別,因為在與您的更新最有關係的地方測試它,這一點非常重要。例如,在編寫執行個體測試內容更新或在發佈執行個體測試新程式碼。

在生產系統中,Dispatcher 和 http Apache 伺服器一律位於 AEM 發佈執行個體的前面。它們為 AEM 系統提供快取和安全性服務,因此針對 Dispatcher 測試程式碼和內容更新是最重要的。

使用本機開發環境在本機預覽程式碼和內容 previewing-your-code-and-content-locally-with-the-local-development-environment

若要讓 AEM Headless 專案準備好開始,您需要確保專案的所有組成部分都正常運作。

為此,您必須將所有項目放在一起:程式碼、內容和設定,並在本機開發環境中測試以準備好上線。

本機開發環境由三個主要區域組成:

  1. AEM 專案 - 此專案包含 AEM 開發人員將要處理的所有自訂程式碼、設定和內容
  2. 本機 AEM 執行階段 - AEM 編寫和發佈服務本機版本,用於從 AEM 專案部署程式碼
  3. 本機 Dispatcher 執行階段 - 包含 Dispatcher 模型的 Apache htttpd 網頁伺服器本機版本

設定好本機開發環境後,您可以透過在本機部署靜態節點伺服器來模擬提供給 React 應用程式的內容。

下一步 whats-next

您已完成此部分的 AEM Headless 開發人員歷程,您應該:

  • 熟悉 AEM 開發工具
  • 了解本機開發工作流程

接下來查看文件如何將 Headless 應用程式上線繼續您的 AEM Headless 歷程,在其中您可實際將 AEM Headless 專案上線!

其他資源 additional-resources

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab