none
WebApi + CORS: POST funktioniert, PUT nicht RRS feed

  • Frage

  • Hallo,

    ich habe ein Problem mit dem CORS-Zugriff auf einen WebApi-REST-Service. Was ich bisher gemacht habe:

    • Microsoft.AspNet.Cors V 5.2.3 per NuGet installiert,
    • config.EnableCors() in der "Register"-Methode von WebApiConfig aufgerufen,
    • den Controller mit [EnableCors("*", "*", "*")] attributiert,

    Damit funktioniert es (aus einer Angular2-App) einen CORS-POST-Request mit den Headern "content-type: application/json" und "accept: application/json" erfolgreich durchzuführen. Das Fiddler-Protokoll zeigt dabei zunächst den OPTIONS-PreFlight-Request des Browsers (IE11) an und dann den POST-Request.

    Wenn ich aus der gleichen Anwendung einen PUT-Request abschicke, ist im Fiddler-Protokoll nur der OPTIONS-Request zu finden und als Antwort vom Server kommt: "404 No action was found on the controller ... that matches the request". Der PUT-Request benutzt die gleichen Header, wie der POST-Request.

    Wenn ich den PUT-Request via Swagger/Swashbuckle ausführe, funktioniert er (es ist dann nur halt kein CORS-Zugriff). Bei dem Controller handelt es sich um einen ODataController.

    Kann mir jemand sagen, wo ich noch schauen/schrauben muss, um auch PUT-Requests erfolgreich absetzen zu können?
    Falls zur Lösung des Problems noch weitere Informationen nötig sind, sagt Bescheid.

    Danke im Voraus für eure Hilfe.
    Jürgen

    Donnerstag, 7. Juli 2016 10:52