如何使用servicestack保持会话永久性

时间:2014-04-07 19:44:11

标签: servicestack basic-authentication remember-me

我正在与一位使用工具的远程iPad开发人员合作,他说这种工具不允许他设置" RememberMe = true"注册用户时的值。因为我们总是想要设置这个值,我想我可以简单地拦截服务器端的请求并自己设置它。我正在使用基本身份验证,我已经覆盖了" BasicAuthProvider"所以我可以访问" TryAuthenticate"和#34;认证"方法。这些方法都提供了包含原始Request的IServiceBase参数。我正在考虑修改DTO,但它是空的。所以我查看了cookie值,我可以轻松地为" ss-opt = perm"添加一个值。在那里。但我甚至不确定"烫发"是对的。

我的问题是这个...这是在服务器端将RememberMe标志设置为true的最佳方法吗?我的搭档说他正在使用的图书馆名为" afnetworking"但这似乎是一个死胡同。

马库斯

编辑:我的合作伙伴找到了一种方法来设置" ss-opt"用他们的工具来衡量,但这似乎并没有帮助。 6小时后他仍然遇到问题。还有其他信息。他等了6个小时后得到的第一个回应是" ss-pid" cookie值,但" ss-id"和" ARRAffinity"第一个回复中缺少cookie。随后的回复有它们。怪异。

我将切换到使用AzureCache而不是MemCache来查看是否有帮助。但是我没有在6小时内更新服务器,所以内存缓存仍然没有与ss-pid值相关的会话ID值?

编辑2:我的错误印象是"缓存"是系统保留永久ss-pid值的地方,我所要做的就是注册缓存。如何在服务器更新之间保留ss-pid值?

1 个答案:

答案 0 :(得分:1)

切换到AzureCache并让客户端插入ss-opt cookie似乎正在运行。