Ejecución de una función de Azure con una solicitud HTTP

Completado

Una solicitud HTTP es una operación común en la mayoría de las plataformas y los dispositivos. Tanto si es una solicitud para buscar una palabra en un diccionario o para obtener la información meteorológica local, todo el tiempo enviamos solicitudes HTTP. Azure Functions nos permite crear rápidamente un fragmento de lógica que se ejecutará cuando se reciba una solicitud HTTP.

En esta unidad, aprenderá a crear e invocar una función mediante un desencadenador de HTTP. También explorará algunas de las opciones de personalización que están disponibles para HTTP.

¿Qué es un desencadenador de HTTP?

Un desencadenador de HTTP es un desencadenador que ejecuta código cuando recibe una solicitud HTTP. Los desencadenadores de HTTP tienen muchas funcionalidades y personalizaciones, como por ejemplo:

  • Proporciona acceso autorizado mediante el suministro de claves.
  • Restringen qué verbos HTTP se admiten.
  • Devuelven datos al autor de la llamada.
  • Reciben datos a través de parámetros de cadena de consulta o el cuerpo de solicitud.
  • Admiten plantillas de ruta de dirección URL para modificar la dirección URL de la función.

Al crear un desencadenador HTTP, debe proporcionar un nombre para el desencadenador y elegir un nivel de autorización.

¿Qué es un nivel de autorización de desencadenador de HTTP?

Un nivel de autorización de desencadenador HTTP es una marca que indica si una solicitud HTTP entrante necesita una clave de API para la autorización.

Hay tres niveles de autorización:

  1. Función
  2. Anónimo
  3. Administrador

Los niveles Función y Administración se basan en "claves". Para enviar una solicitud HTTP, debe proporcionar una clave para la autorización. Hay dos tipos de claves: de función y de host. Las diferencias entre las dos claves es su ámbito. Las claves de función son específicas de una función. Las claves de host se aplican a todas las funciones dentro de la aplicación de función. Si se establece el nivel de autorización en Función, se puede usar un clave de función o una clave de host. Si el nivel de autorización se establece en Administración, debe proporcionar una clave de host.

Importante

Dado que las claves de host proporcionan acceso elevado a la aplicación de funciones, debe transportarlas y almacenarlas de forma segura.

El nivel Anónimo significa que no se requiere autorización. En este ejercicio se usa el nivel de autorización Anónimo.

Cómo crear un desencadenador de HTTP

Al igual que un desencadenador de temporizador, puede crear un desencadenador de HTTP mediante Azure Portal. Dentro de la función de Azure, seleccione Desencadenador HTTP en la lista de tipos de desencadenador predefinidos, luego escriba la lógica que desea ejecutar y realice las personalizaciones, como restringir el uso de determinados verbos HTTP.

Un valor que es importante comprender es Nombre de parámetro de solicitud. Esta configuración es una cadena que representa el nombre del parámetro que contiene la información sobre una solicitud HTTP entrante. De forma predeterminada, el nombre del parámetro es req.

Cómo invocar un desencadenador de HTTP

Para invocar un desencadenador de HTTP, envíe una solicitud HTTP a la dirección URL de su función. Para obtener esta dirección URL, vaya a la página de código de la función y seleccione el vínculo Obtener la dirección URL de la función.

Screenshot of the Azure portal showing a Functions App pane with the app's Get function URL button highlighted.

Una vez que tiene la dirección URL de la función, puede enviar solicitudes HTTP. Si la función recibe datos, recuerde que puede usar parámetros de cadena de consulta o proporcionar los datos a través del cuerpo de solicitud.

Un desencadenador HTTP se ejecuta cuando recibe una solicitud HTTP a su dirección URL de función. Los desencadenadores HTTP permiten recibir datos, ejecutar lógica y, opcionalmente, devolver datos al autor de la llamada.