У меня есть .NET Core API, который ловит ошибки в нескольких сценариях.Один из которых, когда вызов не возвращает данных.Когда данные не возвращаются, получается 200ok с ошибкой сообщения о том, что данные не возвращены.
В моем API у меня настроен CORS при запуске:
app.UseCors(builder => builder
.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials());
И язарегистрировать его перед моим MVC:
services.AddCors();
services.AddMvc();
Это прекрасно работает, когда запрос выполняется на внутреннем API, но если я улавливаю ошибку ... например, когда данные не возвращаются с сервера, яполучить это в консоли:
Client Side Error: Object { headers: {…}, status: 0, statusText: "Unknown Error", url: null, ok: false, name: "HttpErrorResponse", message: "Http failure response for (unknown url): 0 Unknown Error", error: error }
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://localhost:52706/api/peoplecategories. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).[Learn More]
С обработкой ошибок, которую я делаю в своем Angular App, я предполагаю, что должен получить ответ об ошибке, возвращенный из catch в моем API, но вместо этого я получаю эту ошибку CORSи Неизвестный ответ.
Вот точно такой же вызов в Почтальоне, вместе с его последующим ответом: