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