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 HTTP. También explorará algunas de las opciones de personalización disponibles para los desencadenadores 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 de Función y Administrador están basados en "claves". Para enviar una solicitud HTTP, debe proporcionar una clave para la autorización. Hay dos tipos de claves: función y 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 el nivel de autorización está establecido en Función, puede usar una función o una clave de host . Si el nivel de autorización está establecido en Administrador, 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 desencadenadores predefinidos y, a continuación, escriba la lógica que desea ejecutar y realice las personalizaciones, como restringir el uso de determinados verbos HTTP.

Una configuración que es importante comprender es el nombre del 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ódigos de la función y seleccione el vínculo Obtener dirección URL de la función .

Captura de pantalla del portal de Azure que muestra un panel de la aplicación de Functions con el botón Obtener URL de la función de la aplicación resaltado.

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.