Перенаправить на домашнюю страницу, если пользовательские жесткие коды URL ASP. NET Core 2.2 - PullRequest
0 голосов
/ 06 мая 2020

Итак, если пользователь добавил в закладки URL-адрес после домашней страницы и пытается его использовать, мне нужно перенаправить его на домашнюю страницу. Это связано с тем, что рекапча находится на домашней странице, поэтому пользователю нужно начать с нее.

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

Для этого приложения нет входа в систему. Я ищу и пробовал это, пытаясь обойти изменения в сеансах ядра 2+:

public void ConfigureServices(IServiceCollection services)
{
    services.Configure<CookiePolicyOptions>(options =>
    {
        // This lambda determines whether user consent for non-essential cookies is needed for a given request.
        options.CheckConsentNeeded = context => false;
        options.MinimumSameSitePolicy = SameSiteMode.None;
    });

    services.AddSession(); // added to enable session
    services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
}

Но когда я пытаюсь запустить это: просто ничего не сохраняется

HttpContext.Session.SetString("ClickedRecaptcha", "Yes");

Является ли передача и сброс TempData после каждого прохода единственным способом сделать это, или я что-то упускаю? Это ASP. NET Core 2.2

...