Белая страница после тайм-аута - PullRequest
0 голосов
/ 03 октября 2019

у меня есть веб-приложение mvc, сборка с asp.net core mvc 2.2.

Во время работы все работает нормально.

Когда я много покидаю свой браузер, когда я возвращаюсьи нажмите на ссылку или нажмите F5, страница будет белой, без какой-либо ошибки приложения: просто ошибка 401.

Я повторяю эту ошибку, удаляя файл cookie .AspNetCore.Identity.Application (истекает сеанс).

.AspNetCore.Identity.Application cookie - это файл по умолчанию.

Здесь мой класс запуска:

'c #

namespace MyWebApp
{
    public class Startup
    {

        private ApplicationDbContext _mycontext;



        public Startup(IHostingEnvironment env)
        {
           //something            
        }

        public IConfiguration Configuration { get; }


        public void ConfigureServices(IServiceCollection services)
        {
            int minutes = 10;   //to appsettings

            services.AddDbContext<ApplicationDbContext>(options => options.UseSqlServer(
                Configuration.GetConnectionString("DefaultConnection"),
                sqlServerOptions => sqlServerOptions.CommandTimeout((60*minutes)+1))
                );


            services.AddIdentity<ApplicationUser, ApplicationRole>(options =>
            {
                options.Password.RequireDigit = false;
                options.Password.RequiredLength = 4;
                options.Password.RequireNonAlphanumeric = false;
                options.Password.RequireUppercase = false;
                options.Password.RequireLowercase = false;

            })
            .AddEntityFrameworkStores<ApplicationDbContext>()
            .AddDefaultTokenProviders();


            services.AddTransient<IEmailSender, EmailSender>();
            services.AddSingleton<IMvcControllerDiscovery, MvcControllerDiscovery>();

            services.AddMvc(options => options.Filters.Add(typeof(DynamicAuthorizationFilter)));    //mmmmmm

            services.AddHttpContextAccessor();

        }

        public void Configure(IApplicationBuilder app, IHostingEnvironment env, ApplicationDbContext context, RoleManager<ApplicationRole> roleManager, UserManager<ApplicationUser> userManager, ILoggerFactory loggerFactory)
        {


            loggerFactory.AddConsole(Configuration.GetSection("Logging"));
            loggerFactory.AddDebug();
            loggerFactory.AddContext(LogLevel.Information, Configuration.GetConnectionString("DefaultConnection"));


            if (env.IsDevelopment())
            {
                app.UseBrowserLink();
                app.UseDeveloperExceptionPage();
                app.UseDatabaseErrorPage();
            }
            else
            {
                app.UseExceptionHandler("/Home/Error");
                app.UseHsts();
            }

            app.UseStaticFiles();



            app.Map("/fexml", subApp =>
            {
                //something   
            });

            app.Map("/fexml-d", subApp =>
            {
                //something   
            });


            DataSeed.Initialize(context, userManager, roleManager).Wait();

            app.UseAuthentication();
            app.UseMvc(routes =>
            {
                routes.MapRoute(
                    name: "default",
                    template: "{controller=Home}/{action=Index}/{id?}");
            });

        }
    }
}

Я следовал этомуссылка: https://www.codeproject.com/Articles/1248792/Dynamic-Role-Based-Authorization-in-ASP-NET-Core для создания DynamicAuthorizationFilter.

Может ли у вас такое же предложение? спасибо

...