У меня очень специфическая проблема.
- Я занимаюсь разработкой WebAPI на основе AWS Lambda (.NET core 2.0) без сервера.
- Я добавил контроллер и все необходимые настройки CORS в Setup.cs.
- Мне удалось использовать API после всех вышеперечисленных шагов.
- Я добавил второй контроллер, и настройки CORS не дали результатов!
- Я пробовал несколько методов, таких как явное добавление EnableCors к контроллерам и добавление перехватчика для OPTIONS, но опять-таки безрезультатно.
- Я удалил дополнительный контроллер, и все вернулось в норму (CORS дает эффект).
Есть ли ограничение на CORS и количество контроллеров в одной лямбда-функции для ядра .NET?
Редактировать 1: добавление сегментов кода для лучшей иллюстрации
В ConfigureServices
var origins = Configuration.GetSection("AllowedCORS").AsEnumerable().Select(x => x.Value);
services.AddCors(o => o.AddPolicy("AllOrigins", builder =>
{
builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader();
}));
Затем в Configure
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseCors("AllOrigins");
app.UseAuthentication();
app.UseMvc();
}