Acceso a una API con un conector personalizado de Azure Logic Apps

Completado

Como jefe de desarrollo de una empresa de marcos, quiere llamar a una API web personalizada e interna desde un flujo de trabajo en Azure Logic Apps. La API calcula un precio para un marco de imagen en función de las dimensiones que se proporcionen. Para acceder a la API desde el flujo de trabajo de Azure Logic Apps, tendrá que crear un conector propio.

En esta unidad, aprenderá a crear y usar conectores personalizados en un flujo de trabajo de Azure Logic Apps.

¿Por qué optar por conectores personalizados?

A veces necesita algo más que los conectores predefinidos para el escenario de flujo de trabajo. Imagine que tiene una API interna o personalizada a la que quiere llamar desde el flujo de trabajo. Los conectores predefinidos de Azure Logic Apps no admiten este escenario. En su lugar, tendrá que crear un conector personalizado que describa la API. Defina desencadenadores en el conector cuando quiera que el flujo de trabajo responda a un evento de API. Defina acciones en el conector cuando quiera que el flujo de trabajo realice llamadas a la API.

Descripción de una API web para un conector personalizado

Puede crear un conectar personalizado en Azure Portal y hacer referencia a la API de destino. La API se debe describir a sí misma ante el conector personalizado. De este modo, el conector puede presentar los métodos y parámetros adecuados a Azure Logic Apps. En la API, puede implementar esta descripción mediante una definición de OpenAPI o una colección de Postman. Ahora se examinarán estas dos maneras de describir una API.

La aplicación Postman.

La aplicación Postman le obliga a proporcionar la dirección URL de solicitud y toda la autenticación necesaria. También debe especificar la clave de API y el tipo de contenido junto con la definición del cuerpo de la solicitud en formato JSON. Al enviar la solicitud desde la aplicación Postman, la API devuelve una respuesta. La aplicación Postman usa la respuesta para generar una colección. Puede exportar la colección y usarla para describir la API a un conector personalizado.

Definición de OpenAPI

El archivo de definición de OpenAPI es un archivo JSON en el que se enumeran los métodos, parámetros y salidas de la API. En .NET, puede crear un archivo de OpenAPI mediante la adición del paquete NuGet Swashbuckle al proyecto de la API. Después, agregue el código siguiente al código fuente de la API web:

  1. En el archivo Startup.cs, agregue una instrucción using para Swashbuckle:

    using Swashbuckle.AspNetCore.Swagger;
    
  2. Agregue el código siguiente al método ConfigureServices:

    services.AddSwaggerGen(c =>
    {
       c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });
    });
    
  3. Agregue el código siguiente al método Configure:

    if (env.IsDevelopment())
    {
       // Enable middleware to serve generated Swagger as a JSON endpoint.
       app.UseSwagger();
    
       // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.), 
       // specifying the Swagger JSON endpoint.
       app.UseSwaggerUI(c =>
       {
          c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
       });
    }
    

    En el momento de la implementación, este código instala la interfaz de usuario de Swagger, que es una página web que puede usar para probar los métodos de la API web. El código también genera y publica un archivo JSON, que describe la API y es compatible con el estándar OpenAPI. Puede descargar el archivo JSON y usarlo para crear un conector personalizado en Azure Logic Apps.

    Nota

    En el ejercicio anterior ha implementado una API web prediseñada en Azure. De manera predeterminada, esta implementación incluía el código de Swagger anterior. En el ejercicio siguiente, cargará el archivo de OpenAPI creado por Swagger en el conector personalizado.

Creación de un conector personalizado en Azure Portal

Después de implementar la descripción como una colección de Postman o un archivo de definición de OpenAPI, puede compilar el conector personalizado en Azure Portal con estos pasos generales:

  1. Cree un recurso de Azure mediante el tipo de recurso Conector personalizado de Logic Apps.

  2. Cargue la colección de Postman o el archivo de definición de OpenAPI.

    Screenshot that shows how to upload an OpenAPI file for a custom connector.

  3. Siga las indicaciones del asistente para la instalación a fin de terminar de crear el conector.

    Por ejemplo, puede especificar el nombre del conector que ven los desarrolladores en el diseñador de flujos de trabajo. Puede agregar descripciones para ayudar a los desarrolladores a configurar conexiones seguras y usar correctamente el conector.

  4. Guarde el nuevo conector.

Cuando haya terminado, puede usar el conector en el flujo de trabajo de Azure Logic Apps. En el ejercicio siguiente se muestra cómo crear un conector propio.