Enable CORS on Azure App Service
Usando Azure Cloud Shell
Error accediendo a API en Azure (CORS not enabled)
Esta mañana estaba haciendo unas pruebas accediendo a una API (mia) que tengo en Azure.
Suelo utilizar esta API para hacer pruebas, y en esta ocasión estaba probando cuatro cosas de una app realizada en React. En el momento de hacer un fetch he visto que no podía acceder porque me tiraba un típico error de CORS:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://la-url-de-la-app
El problema es que como estos días estoy de baja, en este momento no tengo acceso al código fuente de la API. De modo que he probado de solucionarlo desde el propio portal de azure.
Lo que pasa es que al estar haciendo pruebas con esta aplicación de React, la ruta que debería autorizar para que pueda usar la API es la típica de:
http://localhost:puerto
Y claro, la interfaz del portal de Azure no lo permite (o al menos a mi no me dejaba).
Agregar la URL mediante Azure Bash
Bueno, al menos es posible solucionarlo con el comando usando la Azure Cloud Shell
Si no tienes activada la shell para esta suscripción de Azure, la primera vez te pedirá crear una cuenta de Storage necesaria para su funcionamiento. El proceso es muy sencillo, y está descrito en la sección de quickstart de la shell.
En mi caso suelo utilizar Bash pero también puede usar Powershell si te sientes más cómodo.
El comando es el siguiente y necesitarás saber el nombre de tu Resource Group y del App Service (los tienes ambos en la página de tu app service).
Suponiendo que el nombre de tu Resource Group es MyResourceGroup y tu App Service es ApiDePruebas solo debes agregar la URL a la que quiers permitir el acceso a tu API, en este caso vamos a suponer que es http://localhost:3000
|
|
Una vez añadida la URL vais a poder acceder a ella desde la acplicación cliente sin problema :)
Happy coding!