Поделиться через


Вызов собственных веб-API и REST API из рабочих процессов в Azure Logic Apps

Применяется к: Azure Logic Apps (Расход + Стандарт)

Если у вас есть веб-API или REST API, которые вы хотите вызвать из рабочих процессов в Azure Logic Apps, сначала необходимо выполнить настройки, прежде чем вызывать эти API. Прежде всего, необходимо развернуть ваши API в качестве веб-приложений или API-приложений. Эту задачу можно выполнить, размещая API-интерфейсы в Службе приложений Azure, облачной платформе, которая обеспечивает высокомасштабируемое и простое размещение API.

В службе приложений можно развернуть API в качестве веб-приложений, но вместо этого рассмотрите возможность развертывания API в качестве приложений API. Этот подход упрощает работу при создании, размещении и использовании API в облаке и в локальных средах. Вам не нужно изменять код в API для развертывания в приложении API.

Вы можете вызвать любой API из рабочего процесса, но для лучшего взаимодействия добавьте метаданные Swagger в веб-приложение или приложение API. В этом документе Swagger описываются операции и параметры API, которые помогают рабочим процессам приложений логики работать лучше и проще с помощью API. Вы также должны настроить общий доступ к ресурсам между источниками (CORS) в веб-приложении или приложении API, чтобы рабочий процесс смог получить доступ к API.

В этом руководстве показано, как добавить документ Swagger, настроить CORS для веб-приложения или приложения API и предоставить варианты вызова API из рабочего процесса после завершения развертывания и размещения API в службе приложений.

Дополнительные сведения можно найти здесь

Предпосылки

Добавление доступа Swagger и CORS к веб-приложению или приложению API

При добавлении документа Swagger в веб-приложение или приложение API конструктор рабочих процессов в Azure Logic Apps может упростить поиск и отображение доступных операций и параметров в API. Вы также должны настроить общий доступ к ресурсам между источниками (CORS) в веб-приложении или приложении API, чтобы рабочий процесс смог получить доступ к API.

Чтобы сделать документ Swagger читаемым из рабочего процесса в конструкторе, в веб-приложении или приложении API задайте свойства определения API и доступ CORS.

  1. На портале Azure найдите и откройте веб-приложение или ресурс приложения API.

  2. На боковой панели ресурса приложения выберите "Обзор".

  3. На вкладке "Свойства " в разделе "Домены" из свойства домена по умолчанию скопируйте и сохраните имя веб-сайта где-то на следующем шаге.

  4. На боковой панели ресурса приложения в разделе API выберите определение API. Для указания местоположения определения API введите URL-адрес JSON-файла Swagger, который обычно имеет следующий формат, но может отличаться, если ваш Swagger-файл использует более новую спецификацию API.

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

    В следующем примере показан URL-адрес Swagger с более новой спецификацией API:

    Снимок экрана: портал Azure, страница определения API веб-приложения и URL-адрес для документа Swagger API.

  5. По завершении выберите Сохранить.

  6. На боковой панели ресурса приложения в разделе API выберите CORS.

  7. Для разрешенного источника задайте для политики CORS значение "*", что означает, чтобы разрешить все.

    Этот параметр разрешает запросы от конструктора рабочих процессов в Azure Logic Apps.

    Снимок экрана: панель CORS веб-приложения с установленным значением разрешенных источников доступа *, что разрешает доступ всем.

  8. На панели инструментов нажмите кнопку Сохранить.

Дополнительные сведения см. в статье Host a RESTful API with CORS in Azure App Service.

Вызов API из рабочего процесса

После настройки URL-адреса определения API и CORS операции API отображаются в галерее соединителей, где вы можете их найти и добавить в рабочий процесс.

  • Чтобы просмотреть веб-сайты с URL-адресами OpenAPI, вы можете просматривать веб-сайты подписки в конструкторе рабочих процессов.

  • Чтобы просмотреть доступные действия и входные данные, указывая на документ Swagger, используйте триггер или действие HTTP + Swagger .

  • Чтобы вызвать любой API, включая API, которые не имеют или не предоставляют документ Swagger, вы всегда можете создать запрос с действием HTTP.