【问题标题】:Is it possible to get id of a new session in rails?是否可以在 Rails 中获取新会话的 ID?
【发布时间】:2015-08-08 22:27:11
【问题描述】:

在我的控制器中,我可以使用session.id 来获取当前访问者的会话 ID,但如果是新访问者(或清除了 cookie),则没有会话 rails 将为他生成一个新会话并发送响应。但session.id 在这种情况下返回nil,因此您只能在下一个请求中获取该 ID。当生成新会话时,是否有可能在同一个请求中获取它?

【问题讨论】:

    标签: ruby-on-rails session ruby-on-rails-4


    【解决方案1】:

    看起来 id 是在 Rails 请求响应周期的后期生成的。据我了解是generated (randomly) in rack,是从here调用的。

    您可以覆盖此方法并让它在请求响应周期的早期返回您生成的内容(确保您的加密正确)。

    【讨论】:

    • 所以,似乎没有干净的解决方案。幸运的是,在我的情况下它不是很重要,最好不要在它为 nil 时使用该 id。感谢您的信息!
    猜你喜欢
    • 2019-09-29
    • 2023-03-17
    • 1970-01-01
    • 2011-09-10
    • 2013-08-18
    • 2020-01-08
    • 2011-05-07
    • 1970-01-01
    • 2016-04-17
    相关资源
    最近更新 更多