/ / Zugriffskontrollproblem kann nicht gelöst werden - Javascript, JQuery, Ajax, Cors, Preflight

Zugriffskontrollproblem kann nicht gelöst werden - Javascript, Jquery, Ajax, Cors, Preflight

Dies ist so gut wie ein bekannter Standardfehler, der jedoch nicht mit vorhandenen Stackoverflow-Posts behoben werden kann.

XMLHttpRequest kann nicht geladen werden https://myserver.com/context/
Die Antwort auf die Preflight-Anforderung besteht die Zugriffskontrollprüfung nicht:
Auf dem angeforderten ist kein Header "Access-Control-Allow-Origin" vorhanden Ressource.
Ursprung "https://www.otherwebsite.com"ist daher kein Zugriff erlaubt.
Die Antwort hatte den HTTP-Statuscode 405.

Es folgt der Code, den ich habe -

function setHeader(xhr) {
xhr.setRequestHeader("Access-Control-Allow-Origin", "*");
}

var url = "https://myserver.com/context/";
$.ajax({
url: url,
type: "GET", dataType:"json",
success: function(data) {
_this.question(data.question);
_this.questionId(data.questionId);
_this.choices(data.choices);
}, error: function() {
console.log("ERROR in getting microquestion");
},
beforeSend: setHeader
});

Antworten:

1 für die Antwort № 1

Das "Antwort auf Preflight-Anforderung ... hatte HTTP-Statuscode 405." Nachricht zeigt an, um zu starten, die https://myserver.com/context/ Der Endpunkt muss für die Verarbeitung konfiguriert werden OPTIONS Anforderungen korrekt - auch wenn möglicherweise bereits festgelegt wurde, dass die richtigen CORS-Header für „normale“ Anforderungen zurückgesendet werden.

Für einige Details können Sie die Antwort unter lesen In der angeforderten Ressource ist kein Header "Access-Control-Allow-Origin" vorhanden, wenn versucht wird, Daten von einer REST-API abzurufen- Aber das Wesentliche ist, dass der Server zumindest antworten muss OPTIONS Anfragen mit einem 2xx Erfolgsstatuscode.