Error al enviar adecuada de los valores de encabezado para una comprobación previa petición de angular $http asp.net webapi

Estoy tratando de enviar datos de autenticación a un servidor de web api utilizando angular de $http. Cuando yo agregue la línea siguiente, el navegador se inicia el envío de solicitudes de comprobaciones

$http.defaults.headers.common.Authorization = 'Basic xxxxyyyyyy' ;

De la web de la api de lado, Cuando llego a una petición con el método de OPCIONES, proceso de la siguiente manera.

if (request.Method == HttpMethod.Options && request.Headers.Any(k => k.Key.Contains("Origin")))
            {
                var response = new HttpResponseMessage(HttpStatusCode.OK);
                response.Headers.Add("Access-Control-Allow-Headers", "Content-Type,X-CSRF-Token, X-Requested-With, Accept, Accept-Version, Content-Length, Content-MD5,  Date, X-Api-Version, X-File-Name");
                response.Headers.Add("Access-Control-Allow-Origin", request.Headers.GetValues("Origin"));
                response.Headers.Add("Access-Control-Allow-Credentials", "true");
                response.Headers.Add("Access-Control-Allow-Methods", "POST, GET, PUT, DELETE, OPTIONS");
                var tsc = new TaskCompletionSource<HttpResponseMessage>();
                tsc.SetResult(response);
                return tsc.Task;  
            }

Pero la comprobación previa solicitud falla de control de acceso de verificación.

XMLHttpRequest no se puede cargar http://localhost:53024/api………….
Respuesta a la comprobación previa petición de no pasar el control de acceso de verificación: La
‘Access-Control-Allow-Origin’ encabezado contiene varios valores
http://localhost:9000, *’, pero sólo uno es permitido. Origen
http://localhost:9000‘ es, por tanto, no se permite el acceso.

¿Qué estoy haciendo mal?

InformationsquelleAutor yohannes07 | 2015-10-19

2 Kommentare

  1. 3

    Yo tenía el mismo problema y que fue causado por la web de configuración configuración:

    <httpProtocol>
          <customHeaders>
            <add name="Access-Control-Allow-Origin" value="*" />
            <add name="Access-Control-Allow-Headers" value="Origin, X-Requested-With, Content-Type, Accept, Cache-Control" />
            <add name="Access-Control-Allow-Methods" value="GET,PUT,POST,OPTIONS" />
          </customHeaders>
     </httpProtocol>

    La eliminación de los Access-Control-Allow-Origin encabezado personalizado va a resolver este problema

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Recent Articles

Python «set» con duplicados/elementos repetidos

Hay una forma estándar de representar un "conjunto" que puede contener elementos duplicados. Como yo lo entiendo, un conjunto tiene exactamente un cero o...

Python: generador de expresión vs rendimiento

En Python, ¿hay alguna diferencia entre la creación de un generador de objetos a través de un generador de expresión versus el uso de...

Cómo exportar/importar la Masilla lista de sesiones?

Hay una manera de hacer esto? O tengo que tomar manualmente cada archivo de Registro? InformationsquelleAutor s.webbandit | 2012-10-23

no distingue mayúsculas de minúsculas coincidentes en xpath?

Por ejemplo, para el xml a continuación <CATALOG> <CD title="Empire Burlesque"/> <CD title="empire burlesque"/> <CD...