В моем проекте в контроллере авторизации я создаю OTP-код и возвращаюсь пользователю, а если пользователь отправляет другой запрос на код, проверяет его на сеанс, чтобы узнать, получит ли пользователь его до или нет, но после нового запроса. отметьте HttpContext.Session.Keys
и он пуст
он работает только на почтальоне, а не в любом браузере
Мой класс запуска
services.AddMvcCore(config =>
{
config.EnableEndpointRouting = false;
config.ReturnHttpNotAcceptable = true;
config.Filters.Add(typeof(RequireHttpsAttribute));
var policy = new AuthorizationPolicyBuilder()
.RequireAuthenticatedUser()
.Build();
config.Filters.Add(new AuthorizeFilter(policy));
})
.AddApiExplorer()
.AddFormatterMappings()
.AddDataAnnotations()
.AddCors(opt =>
opt.AddPolicy("CorsPolicy", builder =>
builder.WithOrigins("http://localhost:4200").AllowAnyMethod().AllowAnyHeader().AllowCredentials())
).AddNewtonsoftJson(opt =>
{
opt.SerializerSettings.ReferenceLoopHandling =
Newtonsoft.Json.ReferenceLoopHandling.Ignore;
});
services.AddResponseCaching();
services.AddHsts(opt =>
{
opt.MaxAge = TimeSpan.FromMinutes(5);
});
И
seeder.SeedUsers();
app.UseRouting();
app.UseStaticFiles(new StaticFileOptions()
{
RequestPath = new PathString("/wwwroot")
});
app.UseSession();
В другой проект работает отлично, я не знаю, что не так