Azure Logic Apps 的運作方式
我們已經知道 Azure Logic Apps 的基本知識,現在我們來看看服務在幕後的運作方式。 此資訊能協助您決定 Azure Logic Apps 是否不需要進行任何自訂就能使用。 如此一來,在您需要建立自訂群組件的情況下,您就可以判斷其可能有多困難。
什麼是連接器?
連接器是一種元件,可提供服務或系統的介面,其形式為作業。 例如,Bing 搜尋連接器可讓您擷取新聞文章,Office 365 Outlook 連接器則可以讓您管理電子郵件、月曆和連絡人。 Azure Logic Apps 提供 1,000 多種預建連接器,可讓您用來建立工作流程。
連接器會使用服務的 REST 或 SOAP API 來執行實際工作。 在邏輯應用程式工作流程中使用連接器時,連接器會為您呼叫服務的基礎 API。 因此,連接器基本上是 API 周圍的包裝函式。
下圖顯示 Bing 搜尋連接器與 Bing 搜尋 REST API 之間的關聯性:
提示
如果您已安裝 Microsoft Copilot,則可以詢問 Copilot 下列問題:
- 什麼是 Azure Logic Apps 中常用的連接器?
- Azure Logic Apps 中有幾個連接器?
自訂連接器
您可以撰寫自訂連接器,以存取沒有預先建置連接器的服務。 這些服務必須有 REST 或 SOAP API,這並不意外,因為連接器只是 API 周圍的包裝函式。
若要建立自訂連接器,您要先產生 API 的 OpenAPI 描述。 然後使用該 API 描述在 Azure 入口網站中建立自訂連接器資源。 您可以為連接器設定名稱和圖示,以及為每項作業提供描述。 下圖顯示程序的範例,但請注意,並未涉及任何撰寫程式碼:
您可以在自己的邏輯應用程式工作流程中使用自訂連接器,並與組織中的其他人員共用。 也可以將連接器提交給 Microsoft 以取得憑證。 在認證連接器之後,其會出現在可供所有使用者使用的連接器資源庫中。
什麼是觸發程序和動作
工作流程是從不同類型的工作建置的。 例如,在我們的產業新聞監視案例中,工作流程會在發佈新文章時開始。 工作流程接著會分析情感,並根據情感分數制定決策。 Azure Logic Apps 針對這些概念使用了「觸發程序」、「動作」和「控制動作」等詞彙。 這些作業是 Azure Logic Apps 中工作流程的建置組塊。 下圖顯示如何在新聞監視應用程式中使用每種類型的作業:
觸發程序和動作更具體的定義如下:
觸發程序是符合特定條件時所發生的事件。 當滿足條件時,觸發程序會自動啟動或引發。 例如,當計時器到期或資料變成可用時。
動作是在工作流程中執行特定工作的作業。 動作會在觸發程序啟用之後,或在其他動作完成時執行。
連接器是具有所有相關觸發程序及動作的群組,通常與單一服務、系統或其他群組相關聯。 我們來看幾個範例。
Bing 搜尋連接器可讓您的邏輯應用程式工作流程與 Bing 搜尋服務進行互動。 產業新聞監視應用程式可以使用 Bing 搜尋連接器的觸發程序,判斷何時有新的相關文章可用。 下圖顯示 Bing 搜尋連接器和其觸發程序與動作:
接下來,我們有 Dropbox 連接器。 假設您要與將共用資料儲存在 Dropbox 的專案小組一起工作。 您可以建置一個工作流程,只要偵測到有人變更任何檔案,就傳送通知給其他小組成員。 下圖顯示 Dropbox 連接器及其觸發程序和動作:
最後,我們來看看 Twilio 連接器。 大部分連接器都會提供觸發程序和動作,但這個連接器只有動作。 Twilio 連接器可讓您傳送通知的簡訊。 例如,您可以在 Dropbox 案例中使用 Twiliio 連接器,在有人變更共用檔案時通知小組成員。 下圖顯示 Twilio 連接器及其動作:
如何從觸發程序和動作建置工作流程
若要建置工作流程,您可以選擇作業,即觸發程序和動作。 工作流程必須以觸發程序啟動。 接著,就可以順著觸發程序和無上限的動作來實作工作流程。 下圖顯示在產業新聞監視應用程式中使用的觸發程序和動作:
觸發程序和動作如何一起運作?
觸發程序和動作本質上都是呼叫基礎 API 作業。 每個作業都有輸入和輸出。 例如,名為 [在有新的新聞文章時] 的 Bing 搜尋 觸發程序會接受搜尋字串,並傳回包含該字串的文章。 名為情感的認知服務動作會接收字串為輸入,然後傳回浮點數的情感分數。 下圖顯示這兩項作業:
Azure Logic Apps 會自動將傳回值設為可供工作流程中的所有後續作業使用。 此功能可讓您將某作業的結果傳送給下一個作業作為輸入。 下圖顯示產業新聞監視應用程式中,最前面兩項作業的資料流程:
什麼是控制動作?
大部分工作流程需依據需要處理的資料執行不同動作。 例如,工作流程可能根據費用金額,將費用報表路由給不同的經理。 在產業新聞監視應用程式中,工作流程必須根據文章的情感分數進行分支。 下圖顯示產業新聞監視應用程式的流程圖,並醒目提示控制邏輯:
Control actions 為 Azure Logic Apps 內建的特殊動作,可提供工作流程控制結構:
- 由布林運算式控制的 Condition 動作。
- 由案例和預設案例控制的 Switch 動作。
- 由布林運算式控制的 Until 和 For each 迴圈動作。
- 無條件的平行分支指示。
下圖顯示如何在產業新聞監視應用程式的工作流程中使用 Condition 動作:
工作流程設計工具是什麼?
工作流程設計工具是建立工作流程的圖形化工具。 設計工具提供畫布介面,您可以在此新增觸發程序和動作來建置工作流程。 例如,產業新聞監視應用程式會使用名為「在有新的新聞文章時」的觸發程式、稱為「條件」的控制動作,以及名為「情感」、「建立 blob」和「傳送電子郵件」的動作。 以下螢幕擷取畫面顯示設計工具中的產業新聞監視工作流程: