asp.net http 登录无跳转

1、Startup类中添加

private const SameSiteMode unspecified = SameSiteMode.Unspecified;

2、ConfigureServices 方法中添加

ConfigureCookie(services);

private static void ConfigureCookie(IServiceCollection services)
{
  services.Configure<CookiePolicyOptions>(options =>
  {
    options.MinimumSameSitePolicy = unspecified;
    options.OnAppendCookie = cookieContext =>
    SetSameSite(cookieContext.Context, cookieContext.CookieOptions);
    options.OnDeleteCookie = cookieContext =>
    SetSameSite(cookieContext.Context, cookieContext.CookieOptions);
  });
}

private static void SetSameSite(HttpContext httpContext, CookieOptions options)
{
  if (options.SameSite == SameSiteMode.None)
  {
    if (httpContext.Request.Scheme != "https")
    {
      options.SameSite = unspecified;
    }
  }
}

3、Configure 方法中添加

app.UseCookiePolicy();

posted @ 2022-02-01 20:56  邪不压正!  阅读(110)  评论(0编辑  收藏  举报