origin - Cors con función Azure desde localhost(no CLI)
response for preflight does not have http ok status javascript (2)
Estamos usando axios en una aplicación vue.js para acceder a una función de Azure. En este momento estamos obteniendo este error:
No ''Access-Control-Allow-Origin'' header is present on the requested resource.
Origin ''http://localhost:8080'' is therefore not allowed access.
Estamos intentando establecer encabezados de respuesta en la función de esta manera:
context.res = {
body: response.data,
headers: {
''Access-Control-Allow-Credentials'': ''true'',
''Access-Control-Allow-Origin'': ''http://localhost:8080'',
''Access-Control-Allow-Methods'': ''GET'',
''Access-Control-Request-Headers'': ''X-Custom-Header''
}
}
¿Alguien ha encontrado este error?
Lo conseguimos trabajando. Fue una configuración en nuestra función Azure. Vaya a "Características de la plataforma" y luego "CORS". Agregamos http: // localhost: 8080 a la lista de "Orígenes Permitidos" y luego todo funcionó.
Para configurar CORS de forma local cuando no está utilizando CLI y está usando Visual Studio / VS Code, necesita agregar el archivo local.settings.json en su proyecto si no está allí.
Asegúrate de que "Copiar a la salida directamente" esté configurado en "copiar si es más nuevo"
Luego, en su "local.settings.json" puede agregar CORS": "*"
estas configuraciones siguientes
{
"IsEncrypted": false,
"Values": {
},
"Host": {
"LocalHttpPort": 7071,
"CORS": "*"
}
}
Más información: https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local