Headless最適化表單如何運作?
Headless最適化表單本質上是JSON結構(結構描述),由表單欄位(文字方塊、選擇和其他許多欄位)和對應的規則(條件邏輯)組成,以將互動行為新增到表單。 您可以在應用程式或網站中使用REST API來請求代管的JSON結構,並在應用程式或網站中將JSON結構以原生方式呈現為表單。 單一Headless最適化表單可提供多個網頁和應用程式,無需對其進行任何應用程式或網站特有的變更。
架構 architecture
典型的Headless最適化表單架構以Adobe Experience Manager Forms伺服器為中心,該伺服器會託管Headless最適化表單。 前端應用程式(網路、行動裝置、JavaScript、聊天機器人等)為每個管道轉譯表單。
Headless調適型表單部署的典型架構如下所示:
Headless調適型表單實作的元件
Adobe Experience Manager Server:除了擔任Headless最適化表單的主機之外,Adobe Experience Manager還提供下列後端功能:
- RESTful APIs可列出、擷取、預填、驗證、提交及追蹤Headless表單的提交狀態。
- 視覺化編輯器,可輕鬆開發Headless調適型表單。
- Forms資料模型,用於接收資料或將資料傳送至不同的資料來源。
- 自動化複雜任務的工作流程引擎。
Headless最適化表單: Headless最適化表單會以.json檔案表示。 JSON結構會定義表單的元件、限制和結構。
前端應用程式:前端應用程式,例如SPA (單頁應用程式)、行動應用程式、JavaScript應用程式,使用Headless最適化表單(JSON表單表示)並在使用者端上轉譯表單。 您可以使用Headless調適型表單隨附的React轉譯器元件來轉譯調適型表單,或建置您自己的自訂元件以原生轉譯Headless調適型表單。 針對原生行動與離線表單使用案例,建議透過API建置您自己的應用程式並擷取表單定義;請參閱行動表單最佳作法。
開發人員工具
在典型的開發週期中,您會先在Adobe Experience Manager Forms伺服器上建立和託管Headless調適型表單。 在第二個步驟中,您需要對應UI元件或使用公用UI元件庫(例如Google素材UI或Chakra UI)來設定表單的樣式。 在最後一個步驟中,您會擷取無頭式最適化表單並將其顯示在應用程式中(網站、行動應用程式、JavaScript應用程式、聊天應用程式或許多其他表面)。
下列工具可協助您建立Headless最適化表單,並將其整合至您的應用程式:
Forms Web SDK (使用者端執行階段): Forms Web SDK是使用者端JavaScript資料庫。 它可讓您對表單欄位套用使用者端驗證、維護表單的狀態,並提供勾點以將表單與UI層或調適型表單轉譯元件連線。 它可讓客戶驗證套用至表單各個欄位的限制,並勾選以將表單的JSON結構連結至UI架構。 Forms Web SDK包含下列元件:
- 商業規則處理器:商業規則處理器接受表單JSON結構作為輸入、管理表單欄位的狀態、執行規則,以及JSON中存在的事件處理常式。
- React繫結器:提供掛接在控制器上,以將狀態新增至表單元件。 在預先填寫表單時也會很有幫助。
- 元件庫:它會提供React Spectrum元件,並在React Binder模組中使用鉤點來新增狀態到這些元件。
除了提供API來驗證套用至表單各個欄位的限制以外,Forms Web SDK還提供鉤點,以將Headless適用性表單連線至UI架構。 它也會提供Headless最適化表單的React轉譯器,以協助將Headless最適化表單整合至您的應用程式。 下列是Web SDK的可用元件:
所有這些元件都包含在AEM Archetype中。 當您為Headless調適型表單建立AEM Archetype 37或更新版本的專案時,專案中包含上述最新版本的程式庫。
- 程式碼遊樂場: 程式碼遊樂場是專為開發人員設計的互動式環境,可試驗、瞭解及測試Headless最適化Forms的功能。
已啟動的應用程式: Adobe也發行了已啟動的應用程式,可幫助您快速啟動Headless最適化表單。
Storybook: Storybook提供Headless最適化表單不同元件的概觀。 它還提供所有支援的元件、其對應屬性和限制的清單。
Visual Studio程式碼擴充功能: Visual Studio程式碼擴充功能可協助建立有效的JSON結構。 它為表單的JSON結構以及新增、刪除或重新命名JSON結構元件等常見功能提供IntelliSense支援和驗證。
HTTP與JavaScript API: HTTP API可讓您列出、擷取、驗證、提交及追蹤Headless表單的提交狀態。
JSON公式:這是Forms運算式文法的實作,可協助您查詢JSON結構並建立Headless適用性表單的規則。 文法是試算表型函式和運運算元的組合,以及JMESPath JSON查詢語言。 您可以使用遊樂場來探索JSON公式語法和功能。
最適化Forms 2.0版規格:最適化Forms 2.0版規格提供定義Headless最適化表單可用的所有元件、限制和方法的詳細資訊。 此規格以PDF格式提供。