Browser senden nach Änderung des http-Headers Optionen anstelle von "Posten"

/*set the response header*/
    Form responseHeaders = (Form) getResponse().getAttributes().get("org.restlet.http.headers"); 
    if (responseHeaders == null) { 
        responseHeaders = new Form(); 
        responseHeaders.add("Access-Control-Allow-Origin", "*");
        responseHeaders.add("Access-Control-Allow-Methods", "POST, GET, PUT, DELETE");
        getResponse().getAttributes().put("org.restlet.http.headers", responseHeaders); 
    } 

Ich habe dies in meinen Restlet 2.0-Code eingefügt, um domänenübergreifenden Zugriff zu ermöglichen. Dadurch funktioniert das erste GET beim Laden von Seiten. Wenn ich jedoch später einen POST durchführe (mit backbone model.save ()), sendet der Browser Optionen mit einem stattdessen eine leere Entität.

Es wird der richtige POST gesendet, wenn ich den obigen Code nicht hinzugefügt habe

Dies geschieht unter Opera, Firefox und Chrome (funktioniert einwandfrei, wenn ich Chrome mit --disable-web-security starte). Ich gehe also davon aus, dass es sich immer noch um ein Browser-Sicherheitsproblem handelt Die Reparatur?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage