Ich schicke einen Beitrag Ajax-Request eine Anfrage Optionen anstelle einem Post schicken:Beitrag Ajax-Request
var responsehttpreq = {}
function createAndSendXmlHttpReq(){
requestBody = {
hostname: "prova",
pathname: "prova",
query: "prova",
method: "prova"
}
console.log("Siamo nella funzione createAndSendXmlHttpReq")
var req = new XMLHttpRequest()
req.onreadystatechange = handler
req.open("POST","http://localhost:8080",true)
req.setRequestHeader("Content-type","application/json")
req.send(JSON.stringify(requestBody))
}
function handler(){
if(this.readyState == 4 && this.status == 200){
console.log('----Risposta http------')
console.log('Status Code:'+this.status)
console.log('Dati:'+this.response)
responsehttpreq = JSON.parse(this.response)
}
}
Die createAndSendXmlHttpReq() von einer Schaltfläche in einer HTML-Seite aufgerufen wird, wenn ich die Taste I drücken empfange keine Antwort, aber ich kann von der Entwicklerkonsole aus sehen, dass eine Optionsanforderung für die CORS-Option gesendet wurde. ich einen Knoten js Server implementiert habe im Fall einer Option, die eine Anforderung Antwort richtig senden:
if(req.method == "OPTIONS"){
res.setHeader("Access-Control-Allow-Origin","*")
res.setHeader("Access-Control-Allow-Methods","POST")
res.setHeader("Access-Control-Request-Headers","content-type")
res.end()
}
Der Browser eine 200 OK-Antwort vom Server für die Optionen Anfrage erhalten, aber nach, dass meine Ajax-Post-Anforderung don Ich komme zum Server. Was ist das Problem?
@ Alexandru-Ionut Mihai - Ich habe Ihre Bearbeitung zurückgesetzt. Die Frage ist ** Lesen ** der Anfrage dann ** Einstellen ** der Antwort ... und ich zitierte den Code aus der Frage. Bearbeiten Sie den Code anderer Personen nur für die Formatierung. – Quentin
In der Origin-Kopfzeile meiner Option Anfrage ist geschrieben "Null", jetzt mein Server sendet Access-Control-Allow-Origin: null, aber nach der Antwort des Servers keine Post-Anfrage ausgelöst werden :( – SimCor