Habilitación de CORS a través de Web.config vs WebApiConfig y los atributos del controlador
Parece que hay dos formas funcionalmente diferentes para habilitar el intercambio de solicitudes de origen cruzado en Web API 2.
Una es importarSystem.Web.Http.Cors
, decorar un controlador con elEnableCors
atribuir y escribirconfig.EnableCors()
en la WebApiConfig:
[EnableCors(origins: "http://111.111.111.111", headers: "*", methods: "*")]
public class GenericController : ApiController
{
// etc.
El otro esmodificar el Web.config:
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="http://111.111.111.111" />
<add name="Access-Control-Allow-Methods" value="*" />
<add name="Access-Control-Allow-Headers" value="*" />
¿Existe una diferencia funcional entre estos dos enfoques diferentes? ¿Cuál es correcto? ¿No logran lo mismo? Si se utilizan ambos métodos para habilitar CORS, ¿explotarán las cosas?