2017-09-11 8 views
2

Dies ist ein bekannter Standardfehler, der jedoch nicht mit vorhandenen Stackoverflow-Posts behoben werden kann.kann das Problem der Zugriffssteuerung nicht beheben

XMLHttpRequest kann nicht geladen werden https://myserver.com/context/
Antwort auf Preflight-Anfrage nicht Zugriffsprüfung nicht passieren:
Nein "Access-Control-Allow-Origin-Header ist auf der angeforderten Ressource.
Ursprung 'https://www.otherwebsite.com' ist daher nicht erlaubt.
Die Antwort hatte HTTP-Statuscode 405.

Nach dem Code 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 
}); 
+1

Lesen der Fehlermeldung: "_No 'Access-Control-Allow-Origin'-Header ist vorhanden __auf der angeforderten Ressource __._" – Teemu

+1

* "Antwort auf Preflight-Anforderung ... hatte HTTP-Statuscode 405." * gibt an, dass zu starten Der Endpunkt https: // myserver.com/context/muss konfiguriert werden, um die OPTIONS-Anforderungen korrekt zu behandeln - selbst wenn Sie möglicherweise bereits so konfiguriert sind, dass die richtigen CORS-Header für "normale" Anforderungen zurückgesendet werden. Für einige Details können Sie die Antwort unter https://stackoverflow.com/questions/43871637/no-access-control-allow-origin-header-is-present-on-the-requested-resource-whe/43881141#43881141 lesen aber der Kern davon ist, minimal, der Server muss antworten auf OPTIONS Anfragen mit einem 2xx Erfolgsstatus Code – sideshowbarker

+0

Ich habe gerade festgestellt, welcher Fehler versuchte darauf hinzuweisen. Das Problem war auf der Serverseite. das ist was "angeforderte Ressource" bedeutet. Danke an @sideshowbarker, der das ausdrücklich darauf hingewiesen hat. Upvoting Sie beide – comiventor

Antwort

1

Die „Antwort auf Preflight-Anfrage ... HTTP-Statuscode 405. hatte“ Meldung zeigt an, zu Starten Sie, der https://myserver.com/context/ Endpunkt muss konfiguriert werden, um OPTIONS Anforderungen korrekt zu behandeln, auch wenn es möglicherweise bereits festgelegt ist, die richtigen CORS-Header für "normale" Anforderungen zurück zu senden.

Für einige Details, die Sie die Antwort auf No 'Access-Control-Allow-Origin' header is present on the requested resource—when trying to get data from a REST API -aber den Kern von ihm lesen können, ist minimal, muss der Server auf OPTIONS Anfragen mit einem 2xx Erfolg Statuscode reagieren.

Verwandte Themen