我是Servicestack的新手。我在不同的服务器上部署了MVC4应用程序和servicestack应用程序 。 我想在不使用MemoryCacheClient进行身份验证的情况下使用servicestack会话。
我无法理解
中给出的解释https://github.com/ServiceStack/ServiceStack/wiki/Sessions
我想检查每个请求是否存在会话,如果seesion为null,则创建具有自定义值的新会话作为用户ID。
我的配置方法如下
public override void Configure(Container container)
{
//use session feature only
Plugins.Add(new SessionFeature());
// use MemoryCacheClient
container.Register<ICacheClient>(new MemoryCacheClient());
// in global request filter check if session exists
this.GlobalRequestFilters.Add((req, res, requestDto) =>
{
//check if session exists
var sessionId = req.GetSessionId();
if (sessionId == null)
{
//if no populate session with user defined data ( user id from requestDto)
}
else
{
//how to get the values from session ?
}
}
请帮忙。 提前致谢
答案 0 :(得分:1)
SessionFeature
已经注册了自己的全局请求过滤器,以自动创建缺少的临时或永久会话ID(即ss-id
或ss-pid
)。
听起来您想要注册Custom AuthEvent来响应会话生命周期中的不同事件,即IAuthEvents.OnCreated()
。