Editar

Compartir a través de


Generador de API de datos de host en Azure Static Web Apps (versión preliminar)

Diagrama de la ubicación actual (

Diagrama de la secuencia de la guía de implementación, incluidas estas ubicaciones, en orden: Información general, Plan, Preparación, Publicación, Monitor y Optimización. La ubicación "Publicar" está resaltada actualmente.

El generador de API de datos de host rápidamente en Azure Static Web Apps solo usa un archivo de configuración. En esta guía se incluyen los pasos para integrar Data API Builder con una aplicación web estática.

En esta guía, siga los pasos para crear un archivo de configuración DAB, hospedar el archivo como parte de la aplicación y, a continuación, usar una conexión de base de datos en Azure Static Web Apps.

Requisitos previos

Importante

La compatibilidad con data API Builder (DAB) en Azure Static Web Apps mediante conexiones de base de datos está en versión preliminar. Azure Static Web Apps usa una versión fija del motor DAB que puede variar de la versión estable más reciente de DAB. Para acceder a las características más recientes de DAB, considere un host alternativo para DAB mediante la versión más reciente del motor desde GitHub, Microsoft Container Registry (Docker Hub) o NuGet.

  • Base de datos compatible existente direccionable desde Azure.

Creación de una aplicación web estática

Para empezar, use Azure Portal para crear una nueva aplicación web estática de Azure mediante la aplicación web en GitHub.

  1. Inicie sesión en Azure Portal (https://portal.azure.com).

  2. Cree un nuevo grupo de recursos. Usará este grupo de recursos para todos los recursos nuevos de esta guía.

    Captura de pantalla de la pestaña

    Propina

    Se recomienda asignar un nombre al grupo de recursos msdocs-dab-swa. Todas las capturas de pantalla de esta guía usan este nombre.

  3. Cree una aplicación web estática de Azure. Use estas opciones para configurar la aplicación web estática.

    Ajuste Valor
    del grupo de recursos de Seleccione el grupo de recursos que creó anteriormente.
    nombre de Escriba un nombre único global.
    tipo plan de Seleccione la mejor opción para la carga de trabajo.
    de origen de Selección de de GitHub
    de cuenta de GitHub de Configuración de una cuenta de GitHub que tiene acceso al repositorio de aplicaciones web
    organización de Seleccione la organización principal o el usuario para el repositorio.
    del repositorio de Seleccione el nombre del repositorio.
    de rama de Selección de la rama principal

    Captura de pantalla de la pestaña

  4. Espere a que se complete la implementación de la aplicación web estática. Un flujo de trabajo de Acciones de GitHub se agrega automáticamente al repositorio que implementará la aplicación en Azure Static Web Apps cada vez que se inserta en la rama principal.

    Nota

    Esta implementación inicial puede tardar unos minutos. Siempre puede comprobar el estado de la implementación en Azure Portal o en la pestaña Acciones de GitHub del repositorio.

  5. Vaya a la nueva aplicación web estática en Azure Portal.

  6. En la sección Essentials, use el url hipervínculo para ir a la aplicación web en ejecución. Compruebe que la aplicación se está ejecutando según lo previsto.

Adición del archivo de configuración DAB

Ahora, use las interfaces de línea de comandos DAB y SWA para crear un nuevo archivo de configuración DAB y agregarlo al repositorio de aplicaciones web.

  1. Abra el repositorio de GitHub para la aplicación web en el entorno integrado para desarrolladores (IDE) que prefiera.

    Propina

    Puede usar cualquier IDE que quiera. Si desea trabajar en la aplicación localmente, puede clonar el repositorio en el equipo local. Si prefiere trabajar en el explorador, puede usar GitHub Codespaces. Asegúrese de que las CLIs SWA y DAB estén instaladas en el entorno de desarrollo.

  2. Abra un terminal en la raíz del repositorio.

  3. Use el comando swa db de la CLI de SWA para inicializar un nuevo archivo de configuración DAB mediante el tipo de base de datos especificado. El comando creará un nuevo archivo denominado staticwebapp.database.config.json en la carpeta swa-db-connections.

    swa db init --database-type "<database-type>"
    

    Importante

    Algunos tipos de base de datos requerirán opciones de configuración adicionales en la inicialización.

  4. Use el comando dab add para agregar al menos una entidad de base de datos a la configuración. Configure cada entidad para permitir todos los permisos para los usuarios anónimos. Repita dab add tantas veces como quiera para las entidades.

    dab add "<entity-name>" --source "<schema>.<table>" --permissions "anonymous:*" --config "swa-db-connections/staticwebapp.database.config.json"
    
  5. Abra y revise el contenido del archivo swa-db-connections/staticwebapp.database.config.json.

  6. Confirme los cambios en el repositorio e insértelos en la rama principal. Esto desencadenará automáticamente una nueva implementación de la aplicación web. Espere a que finalice esta implementación más reciente antes de continuar con esta guía.

Configuración de la conexión de base de datos

A continuación, configure la conexión de base de datos en Azure Portal para permitir que la aplicación web estática acceda a la base de datos.

  1. Vuelva a ir a la aplicación web estática en Azure Portal.

  2. Seleccione la opción conexión de base de datos de en la sección configuración de del menú de recursos. A continuación, seleccione Vincular de base de datos existente para el entorno de producción de .

    Captura de pantalla de la opción

  3. En el cuadro de diálogo de la base de datos Link, use estas opciones para configurar la conexión de base de datos.

    Ajuste Valor
    tipo de base de datos de Seleccione el mismo tipo de base de datos que usó al crear el archivo de configuración de DAB.
    del grupo de recursos de Seleccione el grupo de recursos que creó anteriormente en esta guía.
    nombre de recurso de Seleccione el recurso de base de datos que desea vincular a la aplicación web estática.
    de nombre de base de datos de Escriba el nombre de la base de datos.
    tipo de autenticación de Seleccione el tipo de autenticación que quiere usar.

    Captura de pantalla del cuadro de diálogo

    Propina

    Se recomienda usar una cadena de conexión que no incluya claves de autorización. En su lugar, use identidades administradas y control de acceso basado en roles para administrar el acceso entre la base de datos y el host. Para más información, consulte servicios de Azure que usan identidades administradas.

Prueba del punto de conexión de la API de datos

Por último, compruebe que el punto de conexión de la API de datos está disponible en la aplicación web estática.

  1. Vuelva a ir a la aplicación web estática en Azure Portal.

  2. Use el campo URL de en la sección Essentials para volver a ir al sitio web de la aplicación web estática.

  3. Vaya a la ruta de acceso /data-api de la aplicación en ejecución actual. Observe que la respuesta sigue indicando que el contenedor DAB está correcto.

    { Healthy }
    
  4. Vaya a la ruta de acceso https://<your-static-web-app-url>/data-api/<your-rest-path>/<your-entity-name> de la aplicación en ejecución actual. Esto emite una solicitud de HTTP GET para ese conjunto de entidades. Observe la respuesta JSON.

Limpieza de recursos

Cuando ya no necesite la aplicación o los recursos de ejemplo, quite la implementación correspondiente y todos los recursos.

  1. Vaya al grupo de recursos mediante Azure Portal.

  2. En la barra de comandos de , seleccione Eliminar.