Restauración de la funcionalidad HTTPS con .NET 8 en Data API Builder para bases de datos de Azure

Data API Builder (DAB) se ejecuta localmente para los desarrolladores mediante la interfaz de la línea de comandos (CLI). DAB configura y ejecuta puntos de conexión HTTP y HTTPS sin configuración adicional. Sin embargo, en algunos escenarios de .NET 8, DAB podría no ejecutar correctamente el punto de conexión HTTPS. En este artículo se proporcionan pasos para configurar el punto de conexión HTTPS.

Requisitos previos

Síntomas

Cuando un desarrollador ejecuta DAB en un entorno local, algunos usuarios ven la salida de la consola similar a la siguiente:

...
info: Azure.DataApiBuilder.Service.Startup[0]
      Successfully completed runtime initialization.
info: Microsoft.Hosting.Lifetime[14]
      Now listening on http://[::]:8080
info: Microsoft.Hosting.Lifetime[0]
      Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
      Hosting environment: Development
...

Nota:

El resultado http://[::]:8080 es el punto de conexión, pero no es una dirección URL válida.

Causa

Para los desarrolladores que ejecutan .NET 8 o posterior, el punto de conexión HTTPS requiere que la ASPNETCORE_URLS variable de entorno esté configurada correctamente.

Solución

Para configurar correctamente el entorno local, use uno de los métodos siguientes para establecer la ASPNETCORE_URLS variable de entorno.

Solución 1: Establecer la variable de entorno con un archivo .env

Un .env archivo es un archivo de texto simple que almacena variables de entorno en pares clave-valor. Para establecer la variable de ASPNETCORE_URLS entorno, introduzca un .env archivo junto al archivo con contenido similar al dab-config.json ejemplo siguiente:

SQL_CONNECTION_STRING={your-connection-string}
ASPNETCORE_URLS=http://localhost:5000;https://localhost:5001

Solución 2: Establecer la variable de entorno en el sistema operativo (opcional)

Establezca la variable ASPNETCORE_URLS de http://localhost:5000;https://localhost:5001 entorno en Windows.

[Environment]::SetEnvironmentVariable("ASPNETCORE_URLS", "http://localhost:5000;https://localhost:5001", "User")

Más información

Si el problema no se resuelve, proporcione comentarios o notifiquelo en los debates de data-api-builder.