HTML5 Forms Service Proxy是註冊提交服務Proxy的設定。 若要設定服務Proxy,請透過請求引數指定提交服務的URL submissionServiceProxy.
服務Proxy可消除下列專案:
HTML5表單可以使用以下拓撲來連線到AEM伺服器。
HTML5 forms服務Proxy拓撲
HTML5表單會連線至AEM伺服器,以執行伺服器端的指令碼、網頁服務和提交內容。 HTML5表單的XFA執行階段使用「/bin/xfaforms/submitaction」端點上的Ajax呼叫搭配各種引數來連線至AEM伺服器。 HTML5 forms連線AEM伺服器以執行下列操作:
標示為在伺服器上執行的指令碼稱為伺服器端指令碼。 下表列出伺服器端指令碼和Web服務中使用的所有引數。
參數 |
說明 |
活動 |
活動包含觸發請求的事件。 例如點按、退出或變更 |
contextSom |
contextSom包含執行事件的物件的SOM運算式。 |
範本 |
範本包含用於呈現表單的範本。 |
contentRoot |
contentRoot包含用來呈現表單的範本根目錄。 |
資料 |
資料包含用於轉譯表單的bata位元組。 |
formDom |
formDom包含JSON格式的HTML5表單的DOM。 |
封包 |
封包指定為表單。 |
debugDir |
debugDir包含用來轉譯表單的偵錯目錄。 |
按一下提交按鈕後,HTML5表單會將資料傳送至伺服器。 下表列出HTML5表單傳送至伺服器的所有引數。
參數 |
說明 |
範本 |
用於呈現表單的範本。 |
contentRoot |
用於呈現表單的範本根目錄。 |
資料 |
用於呈現表單的bata位元組。 |
formDom |
JSON格式的HTML5表單的DOM。 |
submiturl |
張貼資料XML的URL。 |
debugDir |
用於呈現表單的偵錯目錄。 |
如果請求引數中不存在submiturl,則提交服務Proxy會作為傳遞。 它可作為傳遞。 它會傳送要求至/bin/xfaforms/submitaction端點,並將回應傳送至XFA執行階段。
如果要求引數中存在送出URL,送出服務Proxy會選取拓撲。
如果AEM伺服器發佈資料,Proxy服務會作為傳遞機制。 它會傳送要求至/bin/xfaforms/submitaction端點,並將回應傳送至XFA執行階段。
如果Proxy張貼資料,Proxy服務會將除submitUrl以外的所有引數傳遞給 /bin/xfaforms/submitaction 結束點並接收xml位元組在回應資料流中。 接著,Proxy服務會將資料xml位元組張貼到submitUrl進行處理。
在將資料(POST要求)傳送至伺服器之前,HTML5表單會驗證伺服器的連線能力和可用性。 為了驗證連線能力和可用性,HTML表單會傳送空白標頭請求給伺服器。 如果伺服器可用,HTML5表單會將資料(POST請求)傳送至伺服器。 如果伺服器無法使用,則會出現錯誤訊息, 無法連線到伺服器, 隨即顯示。 進階偵測可避免使用者重新填寫表單的麻煩。 Proxy servlet會處理head要求,不會擲回例外狀況。