Автоматически перенаправлять на другую страницу после тайм-аута сессии в ядре asp.net - PullRequest
0 голосов
/ 29 августа 2018

Как автоматически перенаправить на другую страницу по окончании сеанса?

Ниже приведен мой код startup.cs.

public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();

        services.AddAuthentication(options => {
            options.DefaultAuthenticateScheme = CookieAuthenticationDefaults.AuthenticationScheme;
            options.DefaultSignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
            options.DefaultChallengeScheme = CookieAuthenticationDefaults.AuthenticationScheme;
        })
             }).AddCookie(options =>
        {
            options.LoginPath = "/auth/signin";
            options.SlidingExpiration = true;
            options.ExpireTimeSpan = TimeSpan.FromSeconds(30);

        });

    }

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }



        app.UseStaticFiles();

        app.UseAuthentication();

        app.UseMvc();
    }

Я могу перенаправить на страницу входа в систему, если я нажму кнопку или ссылку на действие. Но я хочу, чтобы по истечении сеанса сеанс автоматически перенаправлялся на другую страницу (кроме страницы входа). Может ли кто-нибудь помочь мне с этим, пожалуйста?

1 Ответ

0 голосов
/ 25 марта 2019

попробуйте это:

  options.Cookie.Name = "auth_cookie";
            options.Cookie.SameSite = SameSiteMode.None;
            options.LoginPath = new Microsoft.AspNetCore.Http.PathString("/Account/Login");
            options.AccessDeniedPath = "/Account/Login";
            options.ReturnUrlParameter = "/Account/Login";
            options.AccessDeniedPath = "/Account/AccessDenied";
            options.LogoutPath = "/Account/Logout";
            options.ExpireTimeSpan = TimeSpan.FromMinutes(1);//set it less for testing purpose
            // options.Events.OnRedirectToLogin

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...