问题描述
我在使用 Identity 时遇到 cookie 问题,我将过期时间设置为 7 天,并且在我的本地开发环境中它会记住我。但是,当我发布到生产服务器时,它似乎在大约 30 分钟后不记得我了。我可以在生产服务器发回的 cookie 中看到,它对未来的 expires 属性具有正确的值。然而,我注意到的一个区别是,在我的本地开发环境中,该服务发布了一个会话 ID cookie,但在生产服务器上却没有。我还听说有人提到,如果安全标记发生变化,它也会使您的 cookie 失效,但是我之前和之后都检查过安全标记,但它没有更新。
这是我在启动时用来配置 cookie 的代码:
services.ConfigureApplicationCookie(options =>
{
options.Cookie.SameSite = SameSiteMode.Unspecified;
options.Cookie.HttpOnly = true;
options.Cookie.IsEssential = true;
options.Cookie.SecurePolicy = CookieSecurePolicy.SameAsRequest;
options.ExpireTimeSpan = TimeSpan.FromDays(7);
options.SlidingExpiration = true;
options.LoginPath = "/signin";
options.logoutPath = "/signout";
});
另一个看似无关的问题,LoginPath 和 logoutPath 设置从未起作用,我不得不将重定向放在不会覆盖的默认操作上,以使其执行我想要的操作。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)