0

我怎样才能获得 application_controller 中的 session_id。我在这个控制器中创建辅助方法来设置会话并稍后读取它们,并且我能够从 application_controller 读取所有会话变量、cookie 等。唯一的例外是

session[:session_id](尝试的变体 - session[:id]、session["id"]、session["session_id"] 和 request.session_options[:id])

但是这些都没有提供 session_id 值。

在我看来 session[:session_id] 工作正常。但是在应用程序控制器中,这是行不通的。

任何帮助,将不胜感激。我显然在这里做错了什么。

4

1 回答 1

0

你忘了before_filter吗?它对我有用。

class ApplicationController < ActionController::Base
  protect_from_forgery

  before_filter :catch_session_id

  def catch_session_id
    binding.pry
  end
end

    14: def catch_session_id
 => 15:   binding.pry
    16: end

[1] pry(#<WelcomeController>)> session[:session_id]
=> "a7eca9eaaf21cff74c0d21713fcaad09"
于 2012-12-23T08:02:08.080 回答