Conexión o llamada a puntos de conexión de la API de REST desde flujos de trabajo en Azure Logic Apps
Se aplica a: Azure Logic Apps (consumo + estándar)
Para llamar a un punto de conexión de API de REST desde un flujo de trabajo de aplicación lógica en Azure Logic Apps, puede usar las operaciones integradas de HTTP + Swagger para llamar a cualquier punto de conexión de la API de REST a través de un Archivo Swagger. El desencadenador y la acción HTTP + Swagger funcionan del mismo modo que el desencadenador y la acción HTTP, pero ofrecen una mejor experiencia en el diseñador de flujos de trabajo al exponer la estructura de la API y los resultados que se describen en el archivo de Swagger. Para implementar un desencadenador de sondeo, siga el modelo de sondeo que se describe en Creación de API personalizadas para llamar a otras API, servicios y sistemas desde flujos de trabajo de aplicaciones lógicas.
Limitaciones
La HTTP + Swagger operaciones integradas actualmente solo admiten OpenAPI 2.0, no OpenAPI 3.0.
Requisitos previos
Una cuenta y una suscripción de Azure. Si no tiene una suscripción de Azure, regístrese para obtener una cuenta gratuita de Azure.
Dirección URL del archivo Swagger que describe el punto de conexión de la API de REST de destino al que desea llamar
Normalmente, el punto de conexión de REST tiene que cumplir los siguientes criterios para que el desencadenador o la acción funcionen:
El archivo de Swagger debe hospedarse en una URL HTTPS a la que se pueda acceder públicamente.
El archivo de Swagger debe contener una propiedad operationID para cada operación de la definición. De lo contrario, el conector solo mostrará la última operación en el archivo de Swagger.
El archivo de Swagger debe tener la opción Uso compartido de recursos entre orígenes (CORS) habilitada.
En los ejemplos de esta guía se usa Azure AI Face, que requiere una clave de recursos de servicios de Azure AI y una región.
Nota:
Para hacer referencia a un archivo de Swagger que no está hospedado o que no cumple los requisitos de seguridad y entre orígenes, puede cargar el archivo de Swagger en un contenedor de blobs de una cuenta de almacenamiento de Azure y habilitar CORS en esa cuenta de almacenamiento para poder hacer referencia al archivo.
Flujo de trabajo consumo o aplicación lógica estándar desde donde desea llamar al punto de conexión de destino. Para empezar con el desencadenador de HTTP + Swagger, cree un recurso de aplicación lógica con un flujo de trabajo en blanco. Para usar la acción HTTP + Swagger, inicie el flujo de trabajo con el desencadenador que quiera. En este ejemplo se usa el desencadenador de HTTP + Swagger como primera operación.
Agregar un desencadenador HTTP + Swagger
Este desencadenador integrado envía una solicitud HTTP a una dirección URL para un archivo de Swagger que describe una API de REST. A continuación, el desencadenador devuelve una respuesta que incluye el contenido de ese archivo.
En el Azure Portal, abra el recurso de aplicación lógica Estándar y un flujo de trabajo en blanco en el diseñador.
En el diseñador, siga estos pasos generales para agregar el desencadenador de HTTP denominado HTTP + Swagger.
En el cuadro punto de conexión de Swagger, escriba la dirección URL del archivo de Swagger que desee y seleccione Agregar acción.
Asegúrese de usar o crear su propio punto de conexión. Por ejemplo, estos pasos solo usan las siguientes Azure AI Face API dirección URL de Swagger ubicada en la región Oeste de EE. UU. y es posible que no funcionen en el desencadenador específico:
https://westus.dev.cognitive.microsoft.com/docs/services/563879b61984550e40cbbe8d/export?DocumentFormat=Swagger&ApiName=Face%20API%20-%20V1.0
Cuando el diseñador muestra las operaciones que describe el archivo de Swagger, seleccione la operación que quiera usar.
En el ejemplo siguiente se cambia el nombre del desencadenador a Face - Detect para que el desencadenador tenga un nombre más descriptivo.
Proporcione los valores de los parámetros de desencadenador, que varían en función de la operación que haya seleccionado, que quiere incluir en la llamada de punto de conexión. Configure la periodicidad con la que quiere que el desencadenador llame al punto de conexión.
Para agregar otros parámetros disponibles, abra la lista Parámetros avanzados y seleccione los parámetros que desee.
Para obtener más información sobre los tipos de autenticación disponibles para HTTP + Swagger, consulte Incorporación de la autenticación en las llamadas salientes.
Siga compilando el flujo de trabajo con las acciones que desea ejecutar cuando se active el desencadenador.
Cuando haya terminado, guarde el flujo de trabajo. En la barra de herramientas del diseñador, seleccione Save (Guardar).
Agregar una acción HTTP + Swagger
Esta acción integrada envía una solicitud HTTP a la dirección URL para el archivo de Swagger que describe una API de REST. A continuación, la acción devuelve una respuesta que incluye el contenido de ese archivo.
En Azure Portal, abra su recurso de aplicación lógica estándar y el flujo de trabajo en el diseñador.
En el diseñador, siga estos pasos generales para agregar la acción de HTTP denominada HTTP + Swagger.
En el cuadro punto de conexión de Swagger, escriba la dirección URL del archivo de Swagger que desee y seleccione Agregar acción.
Asegúrese de usar o crear su propio punto de conexión. Por ejemplo, estos pasos solo usan las siguientes Azure AI Face API dirección URL de Swagger ubicada en la región Oeste de EE. UU. y es posible que no funcionen en el desencadenador específico:
https://westus.dev.cognitive.microsoft.com/docs/services/563879b61984550e40cbbe8d/export?DocumentFormat=Swagger&ApiName=Face%20API%20-%20V1.0
Cuando el diseñador muestra las operaciones que describe el archivo de Swagger, seleccione la operación que quiera usar.
En el ejemplo siguiente se cambia el nombre de la acción a Face: identificar para que la acción tenga un nombre más descriptivo.
Proporcione los valores de los parámetros de acción, que varían en función de la operación que haya seleccionado, que quiere incluir en la llamada de punto de conexión.
Para agregar otros parámetros disponibles, abra la lista Parámetros avanzados y seleccione los parámetros que desee.
Para obtener más información sobre los tipos de autenticación disponibles para HTTP + Swagger, consulte Incorporación de la autenticación en las llamadas salientes.
Siga compilando el flujo de trabajo con cualquier otra acción que quiera ejecutar.
Cuando haya terminado, guarde el flujo de trabajo. En la barra de herramientas del diseñador, seleccione Save (Guardar).
Hospedar Swagger en Azure Storage
Todavía puede hacer referencia a un archivo de Swagger que no está hospedado o que no cumple los requisitos de seguridad y entre orígenes. Cargue el archivo de Swagger en el contenedor de blobs en una cuenta de almacenamiento de Azure y habilite CORS en esa cuenta de almacenamiento. Para crear, configurar y almacenar archivos de Swagger en Azure Storage, siga estos pasos:
Habilite CORS para el blob. En el menú de la cuenta de almacenamiento, seleccione CORS. En la pestaña Blob service, especifique estos valores y después seleccione Guardar.
Propiedad Valor Orígenes permitidos *
Métodos permitidos GET
,HEAD
,PUT
Encabezados permitidos *
Encabezados expuestos *
Antigüedad máxima (en segundos) 200
Aunque en este ejemplo se usa Azure Portal, puede usar una herramienta como Explorador de Azure Storage, o bien configurar automáticamente este valor mediante este script de PowerShell de ejemplo.
Cree un contenedor de blobs. En el panel Introducción del contenedor, seleccione Cambiar nivel de acceso. En la lista Nivel de acceso público, seleccione Blob (acceso de lectura anónimo solo para blobs) y seleccione Aceptar.
Cargue el archivo de Swagger en el contenedor de blobs, ya sea mediante Azure Portal o el Explorador de Azure Storage.
Para hacer referencia al archivo del contenedor de blobs, obtenga la dirección URL HTTPS que sigue este formato, que distingue entre mayúsculas y minúsculas, en Explorador de Microsoft Azure Storage:
https://<storage-account-name>.blob.core.windows.net/<blob-container-name>/<complete-swagger-file-name>?<query-parameters>
Referencia técnica del conector
En esta sección se proporciona más información sobre las salidas de una desencadenador y acción HTTP + Swagger.
Salidas
La llamada HTTP + Swagger devuelve la siguiente información:
Nombre de propiedad | Type | Descripción |
---|---|---|
headers | Object | Encabezados de la solicitud |
cuerpo | Object | Objeto con el contenido del cuerpo de la solicitud |
código de estado | Entero | Código de estado de la solicitud |
status code | Descripción |
---|---|
200 | Aceptar |
202 | Aceptadas |
400 | Solicitud incorrecta |
401 | No autorizado |
403 | Prohibida |
404 | No encontrado |
500 | Error interno del servidor. Error desconocido. |