查看 Application Integration 支援的連接器。
JavaScript 工作
您可以使用 JavaScript 工作編寫自訂 JavaScript 程式碼片段,用於整合作業。
您可以使用 JavaScript 編輯器為整合作業編寫複雜的資料對應邏輯、執行變數指派作業,以及新增或修改整合變數。
JavaScript 編輯器支援下列功能:
- 小導覽圖會顯示指令碼的概略總覽,方便快速瀏覽。
- 語法/程式碼標示、縮排和行號,讓程式碼更易於閱讀及辨識結構。
- 醒目顯示錯誤,以便找出並追蹤程式碼中的錯誤。
- 折疊功能可展開及收合指令碼區塊。
- 點按即可複製選項,將指令碼複製到剪貼簿。
設定 JavaScript 工作
如要將 JavaScript 任務新增至整合,請執行下列步驟:
- 前往 Google Cloud 控制台的「Application Integration」頁面。
- 在導覽選單中,按一下「整合」。
系統隨即會顯示「Integrations」頁面,列出 Google Cloud 專案中可用的所有整合項目。
- 選取現有的整合,或按一下「建立整合」來建立新的整合。
如果您要建立新的整合功能:
- 在「Create Integration」窗格中輸入名稱和說明。
- 選取整合作業的區域。
- 選取要用於整合的服務帳戶。您隨時可以透過整合工具列的 「整合摘要」窗格,變更或更新整合作業的服務帳戶詳細資料。
- 按一下「建立」,新建立的整合服務會在整合服務編輯器中開啟。
- 在整合編輯器的導覽列中,按一下「Tasks」,即可查看可用任務和連接器的清單。
- 在整合服務編輯器中,按一下並放置 JavaScript 元素。
- 按一下設計工具中的「JavaScript」元素,即可查看「JavaScript」任務設定窗格。
- 按一下「Open script editor」,即可查看及編輯 JavaScript 編輯器。您也可以點選「使用 Gemini 產生指令碼」,透過 Gemini 產生 JavaScript 程式碼。如要瞭解如何使用 Gemini 產生 JavaScript 程式碼,請參閱「使用 Gemini 輔助功能設定 JavaScript 工作」一文。
- 在 JavaScript 編輯器中自動建立的
executesScript(event)
函式中編寫 JavaScript 程式碼。完成後關閉編輯器,系統會自動儲存所有變更。如要瞭解如何存取整合變數和支援的函式,請參閱「 使用 JavaScript 編輯器」。
如要瞭解如何查看產生的執行記錄,請參閱「執行記錄」。
下圖顯示 JavaScript 編輯器的範例版面配置:
使用 JavaScript 編輯器
如要查看及編輯 JavaScript 編輯器,請前往 JavaScript 任務設定窗格,然後按一下「Open script editor」(開啟指令碼編輯器)。根據預設,JavaScript 編輯器會包含名為 executesScript(event)
的函式,其中:
-
executesScript()
:在整合執行期間,應用程式整合執行 JavaScript 工作時呼叫的函式。 -
event
:Application Integration 的記憶體內物件。如要瞭解 event 物件支援的方法,請參閱「 Access 整合變數」。
JavaScript 執行引擎
應用程式整合功能先前支援 Rhino 做為 JavaScript 執行引擎,用於執行 JavaScript 工作。為充分發揮 Google 開放原始碼高效能 JavaScript 引擎的效能和安全性優勢,我們將淘汰 Rhino,所有 JavaScript 執行作業現在都會使用 Google 的開放原始碼高效能 JavaScript 引擎 V8。
V8 的優點
V8 JavaScript 引擎具備下列優點:
- 效能:V8 的速度比 Rhino 快上許多,可加快 JavaScript 工作的執行速度。含有大型變數和複雜運算的劇本可加快執行速度。
- 標準相容性:V8 支援 ECMAScript 2024,可確保更佳的相容性和可維護性。
- 安全性:V8 會持續更新安全性功能並改善相關功能,為整合作業提供更安全的環境。
- 現代功能:V8 支援最新的 JavaScript 功能,可讓您運用現代語言結構和程式庫。
將現有的 JavaScript 工作遷移至 V8
如要將在 Rhino 上執行的現有 JavaScript 工作遷移至 V8,請執行下列操作:
- 找出含有 JavaScript 工作的已發布整合項目,並取消發布。
- 針對每個 JavaScript,請在任務設定窗格中按一下「Open script editor」。
應用程式整合功能會自動更新現有指令碼,以便使用 V8。
- 查看並測試 JavaScript 程式碼。
- 發布整合項目。
存取整合變數
您可以在 JavaScript 編輯器中,使用應用程式整合的 記憶體內事件物件存取整合中定義的變數。
您可以透過下列方法,從 JavaScript 編輯器存取整合變數:
函式名稱 | 說明 | 用法 | |
---|---|---|---|
|
傳回整合作業的執行 ID。 傳回類型:字串 |
語法: 示例: function executeScript(event) { event.getEventExecutionInfoId(); } |
|
|
傳回 Google Cloud 專案 ID。 傳回類型:字串 |
語法:
示例: function executeScript(event) { event.getGcpProjectId(); } |
|
|
傳回整合作業目前的名稱。 傳回類型:字串 |
語法:
示例: function executeScript(event) { event.getIntegrationName(); } |
|
|
傳回提供的整合變數值。 傳回類型:整合變數的資料類型 |
語法:
輸入參數:整合變數名稱。如果 範例: function executeScript(event) { event.getParameter("var1"); } |
|
|
傳回整合區域的名稱。 傳回類型:字串 |
語法:
示例: function executeScript(event) { event.getRegion(); } |
|
|
將指定的值寫入執行記錄。 如要瞭解如何查看產生的執行記錄,請參閱「執行記錄」。 |
語法:
輸入參數:指令碼中使用的任何變數或函式。 範例 1: function executeScript(event) { event.log(event.getParameter("var1")); } 示例 2: function executeScript(event) { event.log("Lorem ipsum"); } |
|
|
設定或更新整合變數的值。 |
語法:
輸入參數:這個函式會採用下列引數:
示例: function executeScript(event) { event.setParameter("`responseBody`", "NewStringValue"); } |
設定工作參數
如果整合作業包含多個 JavaScript 工作未使用的大型參數,您可以為 JavaScript 工作設定 TaskParameter
欄位,以改善效能。
如要為 JavaScript 工作指派 TaskParameter
欄位,請選取下列任一選項:
控制台
- 前往「應用程式整合」頁面。
- 選取整合項目。整合服務編輯器隨即開啟。
- 依序點選 >「下載整合功能」>「整合功能版本」。整合版本會以 JSON 檔案格式下載。 「動作」
-
在編輯器中開啟整合版本檔案,然後執行以下操作:
-
找出
taskConfigs
欄位,其中的工作為JavaScriptTask
。在parameters
欄位中,找出名稱為script
的參數。"taskConfigs": [{ "task": "JavaScriptTask", "taskId": 1, "parameters": { "script": { "key": "script", "value": { "stringValue": "function that is called during the JavaScriptTask execution" } }" }]
-
在這個
parameters
欄位中,使用下列範本新增JavaScriptTask
欄位使用的參數:"ParamName": { "key": "ParamName", "value": { "stringValue": "$ParamName$" } }
-
找出
- 儲存對整合版本檔案所做的變更。
- 將整合版本檔案上傳至整合功能。
API
- 如要下載整合版本,請呼叫
projects.locations.integrations.versions.download
方法,並將filFormat
設為JSON
。 -
在編輯器中開啟整合版本檔案,然後執行以下操作:
-
找出
taskConfigs
欄位,其中的工作為JavaScriptTask
。在parameters
欄位中,找出名稱為script
的參數。"taskConfigs": [{ "task": "JavaScriptTask", "taskId": 1, "parameters": { "script": { "key": "script", "value": { "stringValue": "function that is called during the JavaScriptTask execution" } }" }]
-
在這個
parameters
欄位中,使用下列範本新增JavaScriptTask
欄位使用的參數:"ParamName": { "key": "ParamName", "value": { "stringValue": "$ParamName$" } }
-
找出
- 如要上傳整合功能版本,請使用更新後的整合功能版本檔案呼叫
projects.locations.integrations.versions.upload
方法。
錯誤處理策略
工作錯誤處理策略會指定在工作因暫時性錯誤而失敗時,應採取的動作。如要瞭解如何使用錯誤處理策略,以及各種錯誤處理策略,請參閱「錯誤處理策略」。
配額與限制
如要進一步瞭解配額和限制,請參閱「配額與限制」。