【问题标题】:how do i keep the session permanent with servicestack如何使用 servicestack 保持会话永久
【发布时间】:2014-04-07 19:44:10
【问题描述】:

我正在与一位远程 iPad 开发人员合作,该开发人员正在使用一种他说不允许他在注册用户时设置“RememberMe=true”值的工具。由于无论如何我们总是希望设置这个值,我想我可以简单地在服务器端拦截请求并自己设置它。我正在使用基本身份验证,并且我已经覆盖了“BasicAuthProvider”,因此我可以访问“TryAuthenticate”和“Authenticate”方法。这些方法都提供了一个包含原始请求的 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 值?

【问题讨论】:

  • 我正在寻找“最佳实践”的建议。有什么想法吗?我尝试了解更多关于 ss-opt 和 RememberMe 字段的信息,但 SS 的 GitHub wiki 上并没有太多内容。所以我在这里在黑暗中工作。任何意见将不胜感激。
  • demis 或任何人?我走对了吗?
  • 仍然希望得到一点反馈。

标签: servicestack basic-authentication remember-me


【解决方案1】:

切换到 AzureCache 并让客户端插入 ss-opt cookie 似乎可以正常工作。

【讨论】:

    猜你喜欢
    • 2017-09-09
    • 1970-01-01
    • 2010-12-18
    • 1970-01-01
    • 1970-01-01
    • 2011-02-28
    • 2013-10-11
    • 1970-01-01
    • 2011-12-31
    相关资源
    最近更新 更多