Wenn ich eine Löschanforderung an einen bestimmten Endpunkt senden, zum Beispiel mit httpie von Terminal wieNicht in der Lage eine DELETE-Anfrage zu senden mit holen api
http delete http://localhost:8181/admin/applications/uspecs
ich ein gültiges Verhalten bekommen, wie in { success: true }
als Antwort Körper. Aber wenn ich
fetch (
'http://localhost:8181/admin/applications/uspecs',
{
method: 'DELETE',
}
)
.then(res => doSomethingWithResponse())
.catch(err => cosole.error(err))
in JavaScript-Code zu tun, dann erhalte ich ein
Fetch API cannot load http://localhost:8181/admin/applications/uspecs.
Method DELETE is not allowed by Access-Control-Allow-Methods in preflight response.
Fehler auf der Konsole. Was vermisse ich? Ich erhalte eine gültige Methodenliste für die Optionenanfrage.
Lesen Sie über Cross-Origin-Ressource teilen (CORS) - http://StackOverflow.com/Questions/25845203/understanding-Cors. –
In der OPTIONS Antwort, bekomme ich 'Erlaube: LÖSCHEN, HEAD, GET, OPTIONS, POST' Liste. Das sollte es tun, oder? @OndrejSvejdar – nabn
Sie können den Compiler fiddler verwenden, um die OPTIONS-Anforderung an den Endpunkt zu senden und die erhaltene Antwort zu posten. Auch der Beitrag ist verwirrend - stellen Sie sicher, dass die OPTIONS und DELETE-Anfrage an den gleichen Endpunkt gesendet werden (in Ihrem Post sind diese unterschiedlich). –