Problemas con CORS en ASP.NET
Tengo esta aplicación donde me gustaría configurar mis encabezados personalizados en la Web. Configuración, por desgracia, esto no siempre es infalible.
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Methods" value="*" />
<add name="Access-Control-Allow-Headers" value="*" />
</customHeaders>
El conjunto anterior y las iteraciones del mismo, como
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Methods" value="OPTIONS,GET,PUT,DELETE,POST" />
<add name="Access-Control-Allow-Headers" value="Authorization,Content-Type" />
</customHeaders>
no funcionó, funcionó para mí en todos los escenarios. A partir de ahora, esta configuración funciona en aproximadamente el 50% de las máquinas de prueba y proporciona405 Method Not Allowed
en otros.
La alternativa es configurar esto enWebApiConfig.cs
y descomentar los encabezados personalizados enWeb.config
.
//Web API Cross origin requests - Enable
var cors = new EnableCorsAttribute("*", "*", "*");
config.EnableCors(cors);
¿Por qué hay tanta ambigüedad en esto y cómo sé con certeza dóndeCORS
funcionará todo el tiempo? Estoy realmente interesado en configurar CORS enWeb.config
solo como me gustaría la flexibilidad de modificarlo en la versión implementada.