会话到期值开始正常,然后更改为默认值

时间:2016-05-10 20:09:53

标签: servicestack

当我尝试将会话设置为在30分钟后过期时,我有一个特殊情况。我保存会话的代码如下所示。当我在这里设置断点时,变量的值就是我想要的(30分钟)。当我跨过SaveSession行时,我的缓存中的行的ExpiryDate为30分钟。但是,有些东西正在将缓存中的ExpiryDate更改回默认的2周,我不确定它是什么。这一行是我整个服务中唯一的.SaveSession。

sessionExpiry = sessionExpiry ?? ServiceStack.SessionFeature.DefaultSessionExpiry;
authService.SaveSession(session, sessionExpiry);

1 个答案:

答案 0 :(得分:2)

每次保存用户会话时,您都可以覆盖AppHost.OnSaveSession()来处理,例如:

public override void OnSaveSession(IRequest req, IAuthSession session, TimeSpan? expiresIn=null)
{
    return base.OnSaveSession(req, session, TimeSpan.FromMinutes(30));
}