共用方式為


從 Azure Logic Apps 中的工作流程呼叫您自己的 Web API 和 REST API

適用於:Azure Logic Apps (使用量 + 標準)

當您有想要從 Azure Logic Apps 中的工作流程呼叫現有的 Web API 或 REST API 時,您必須先完成一些設定步驟,才能呼叫這些 API。 首先,您必須將 API 部署為 Web 應用程式或 API 應用程式。 您可以在 Azure App Service 上裝載 API 來執行此工作,Azure App Service 是提供高度可調整、輕鬆 API 裝載的雲端平台。

在 App Service 中,您可以將 API 部署為 Web 應用程式,但請改為考慮將 API 部署為 API 應用程式。 當您在雲端和內部部署環境中建置、裝載及取用 API 時,此方法可讓您的工作更輕鬆。 您不需要變更 API 中的任何程式碼,即可部署至 API 應用程式。

您可以從工作流程呼叫任何 API,但為了獲得最佳體驗,請將 Swagger 中繼資料 新增至您的 Web 應用程式或 API 應用程式。 此 Swagger 檔描述您的 API 作業和參數,可協助邏輯應用程式工作流程更妥善、更輕鬆地使用 API。 您也必須在 Web 應用程式或 API 應用程式上設定跨來源資源共用 (CORS),以便工作流程可以存取您的 API。

本指南說明如何新增 Swagger 檔、設定 Web 應用程式或 API 應用程式的 CORS,以及在 App Service 中完成 API 的部署和裝載之後,提供從工作流程呼叫 API 的選項。

如需詳細資訊,請參閱:

先決條件

將 Swagger 和 CORS 存取權新增至您的 Web 應用程式或 API 應用程式

當您將 Swagger 檔新增至 Web 應用程式或 API 應用程式時,Azure Logic Apps 中的工作流程設計工具可以更輕鬆地尋找並顯示 API 中的可用作業和參數。 您也必須在 Web 應用程式或 API 應用程式上設定跨來源資源共用 (CORS),以便工作流程可以存取您的 API。

若要讓 Swagger 文件可從設計工具中的工作流程讀取,請在 Web 應用程式或 API 應用程式上設定 API 定義屬性和 CORS 存取權。

  1. Azure 入口網站中,尋找並開啟您的 Web 應用程式或 API 應用程式資源。

  2. 在應用程式資源側邊欄上,選取 概

  3. [屬性] 索引標籤的 [網域] 底下,從 [預設網域 ] 屬性中,複製並儲存網站名稱以供下一步使用。

  4. 在應用程式資源側邊欄的 API 底下,選取 API 定義。 針對 API 定義位置,輸入 Swagger JSON 檔案的 URL,該檔案通常使用下列格式,但如果您的 Swagger 檔案使用較新的 API 規格,則可能會有所不同:

    https://<website-name>/swagger/docs/v1

    下列範例顯示具有較新 API 規格的 Swagger URL:

    螢幕擷取畫面顯示 Azure 入口網站、Web 應用程式的 API 定義頁面,以及 API Swagger 檔的 URL。

  5. 完成時,選取 [儲存]

  6. 在應用程式資源側邊欄的 API 底下,選取 [ CORS]。

  7. 針對 [允許的來源],將 CORS 原則設定為 '*',這表示允許所有。

    此設定允許來自 Azure Logic Apps 中工作流程設計的要求。

    螢幕擷取畫面顯示 Web 應用程式的 CORS 窗格,其中 [允許的來源] 設定為 *,這允許所有。

  8. 在工具列上,選取 [儲存]

如需詳細資訊,請參閱在 Azure App Service 中使用 CORS 裝載 RESTful API

從工作流程呼叫您的 API

設定 API 定義 URL 和 CORS 之後,您的 API 作業會顯示在連接器資源庫中,供您尋找並新增至工作流程。

  • 若要檢視具有 OpenAPI URL 的網站,您可以在工作流程設計工具中瀏覽訂閱網站。

  • 若要透過指向 Swagger 文件來檢視可用的動作和輸入,請使用 HTTP + Swagger 觸發程序或動作。

  • 若要呼叫任何 API,包括沒有或公開 Swagger 文件的 API,您一律可以使用 HTTP 動作建立請求。