Заголовок CORS «Access-Control-Allow-Origin» отсутствует, когда .NET Core API ловит ошибку - PullRequest
0 голосов
/ 16 октября 2018

У меня есть .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и Неизвестный ответ.

Вот точно такой же вызов в Почтальоне, вместе с его последующим ответом:

enter image description here

1 Ответ

0 голосов
/ 16 октября 2018

Вы должны вернуть действительный ответ JSON от серверной части.Подтвердил ваш ответ еще раз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...