Невозможно включить CORS в ASP.NET Core 2.0 - PullRequest
0 голосов
/ 19 января 2019

Я пытаюсь включить CORS в приложении ASP.NET Core MVC.Я очень расстроен.

Я уже пробовал несколько фрагментов, и ни один из них не работал для меня.Это была моя последняя попытка.

Startup.cs, метод "ConfigureServices".

 services.AddCors(options => options.AddPolicy("AllowAll", p =>  p.AllowAnyOrigin()
          .AllowAnyMethod()
          .AllowAnyHeader().AllowCredentials()));

Startup.cs, метод "Configure".

 app.UseCors("AllowAll");
 app.UseMvcWithDefaultRoute();

В моемКонтроллер Я использовал этот

  [EnableCors("AllowAll")]
public class TestController : Controller
{
    [Route("cors")]       
    public string Test()
    {
        return "Ok";

    }
}

У меня возникают проблемы с CORS на Firefox и Chrome.

1 Ответ

0 голосов
/ 19 января 2019

Для работы CORS необходимо знать одну важную вещь: Access-Control-Allow-Origin

С документация по MSDN ,

Если ответ не включает заголовок Access-Control-Allow-Origin, запрос перекрестного источника завершается неудачно.В частности, браузер отклоняет запрос.Даже если сервер возвращает успешный ответ, браузер не делает ответ доступным для клиентского приложения.

Если этот заголовок присутствует, то обычно ваша конфигурация должна работать.Вы можете проверить это с помощью Fiddler.

В chrome и firefox есть одна опция для «Отключения одного и того же источника».Пожалуйста, обратитесь к этому блогу , чтобы узнать, как его отключить.

Но учтите, что это сделает ваш браузер уязвимым, может быть целесообразно, чтобы он работал во время разработки, но не рекомендуется вообще для производственных сценариев.

...