其他分享
首页 > 其他分享> > IdentityServer4采用Http时在谷歌最新浏览器登录后不跳转

IdentityServer4采用Http时在谷歌最新浏览器登录后不跳转

作者:互联网

startup类添加代码:

 

public void SetSameSite(HttpContext httpContext, CookieOptions options)
    {
        if (options.SameSite == SameSiteMode.None)
        {
            if (httpContext.Request.Scheme != "https")
            {
                options.SameSite = SameSiteMode.Unspecified;
            }
        }
    }
    public override void ConfigureServices(ServiceConfigurationContext context)
    {
        var hostingEnvironment = context.Services.GetHostingEnvironment();
        var configuration = context.Services.GetConfiguration();
        Configure<CookiePolicyOptions>(options =>
        {
            options.MinimumSameSitePolicy = SameSiteMode.Unspecified;
            options.OnAppendCookie = cookieContext =>
                SetSameSite(cookieContext.Context, cookieContext.CookieOptions);
            options.OnDeleteCookie = cookieContext =>
                SetSameSite(cookieContext.Context, cookieContext.CookieOptions);
        });
 }

public override void OnApplicationInitialization(ApplicationInitializationContext context)
    {
        var app = context.GetApplicationBuilder();
        var env = context.GetEnvironment();

        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }

        app.UseAbpRequestLocalization();

        if (!env.IsDevelopment())
        {
            app.UseErrorPage();
        }
        app.UseCookiePolicy();
        app.UseCorrelationId();

} 

 

标签:Http,cookieContext,app,SetSameSite,context,跳转,var,options,IdentityServer4
来源: https://www.cnblogs.com/puzi0315/p/16478948.html