Fehler beim senden der richtigen header-Werte, um ein Preflight-Anfrage vom Winkel $http asp.net webapi
Ich versuche zu senden, die Authentifizierung von Daten in einem back-End-web-api mit Winkel $http. Wenn ich die Zeile hinzufügen unter, der browser beginnt mit dem senden der preflight-Anfragen
$http.defaults.headers.common.Authorization = 'Basic xxxxyyyyyy' ;
Aus der web-api-Seite, Wenn ich eine Anfrage mit OPTIONEN Methode, verarbeite ich es wie folgt.
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;
}
Aber der preflight-Anfrage fehlschlägt access control check.
XMLHttpRequest-Objekt kann nicht geladen werden http://localhost:53024/api.............
Antwort auf preflight-Anfrage nicht passieren access control check:
'Access-Control-Allow-Origin' header mehrere Werte enthält
'http://localhost:9000, *', aber nur eine ist erlaubt. Herkunft
'http://localhost:9000' ist daher nicht der Zugriff erlaubt.
Was mache ich falsch?
InformationsquelleAutor Yohannes Tamru | 2015-10-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
"Access-Control-Allow-Origin-header mehrere Werte enthalten" Fehler Lösung in diesem link. Bitte geben versuchen.
Hoffe, das Hilft!
InformationsquelleAutor Divyesh Sharma
Ich hatte dasselbe problem und es wurde verursacht durch web-config-setting:
Entfernen Sie die Access-Control-Allow-Origin custom-header wird dieses Problem lösen
InformationsquelleAutor Kez Nwichi