У меня было приложение .NET Core 2.1, которое хорошо обрабатывало CORS.Но после обновления до 2.2 я столкнулся с проблемой:
Доступ к XMLHttpRequest по адресу "https://content.xxxx/user/avatar' из источника" https://cabinet.xxxx' былзаблокирован политикой CORS: Ответ на запрос предварительной проверки не проходит проверку контроля доступа: в запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin».
Заголовки ответа: (возможно, этобыть проблема с IIS?)
Соединение: закрыть
Длина содержимого: 315
Тип содержимого: текст / html;charset = us-ascii
Дата: вт, 22 января 2019 г. 15:08:26 GMT
Сервер: Microsoft-HTTPAPI / 2.0
Я пробовал каждую комбинациюЯ мог найти здесь (включение CORS до и после MVC, добавление и удаление UseCors из метода Configure), но ничего не помогло.
public IServiceProvider ConfigureServices(IServiceCollection services)
{
...
services.AddCors(options =>
{
options.AddPolicy("MyPolicy",
builder => builder.WithOrigins("https://cabinet.xxxxxx")
.AllowAnyMethod()
.AllowCredentials()
.AllowAnyHeader());
});
services.AddMvc();
...
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseHsts();
//app.UseHttpsRedirection();
app.UseCors("MyPolicy");
app.UseMvc();
app.UseDefaultFiles();
app.UseStaticFiles();
}
и метод
[HttpPost]
[EnableCors("MyPolicy")]
[Route("user/avatar")]
[Authorize]
public async Task Method(IFormFile file) {...}
Я пропустилчто-то?Я не хочу понижаться до 2.1.