Ruby on rails 正在获取会话ID值

Ruby on rails 正在获取会话ID值,ruby-on-rails,ruby,session-variables,sessionid,Ruby On Rails,Ruby,Session Variables,Sessionid,我正在尝试在Rails 2.2.2应用程序中获取会话id 我检查了Rails文档,并从语法上尝试了一些不同的东西 当我执行request.inspect或session.inspect时,我看到@session\u id有一个值 @session_id="BAh7CjoMd...", 但以下所有结果均为零: request.session[:session_id].inspect session[:session_id].inspect session['session_id'].insp

我正在尝试在Rails 2.2.2应用程序中获取会话id

我检查了Rails文档,并从语法上尝试了一些不同的东西

当我执行request.inspect或session.inspect时,我看到@session\u id有一个值

@session_id="BAh7CjoMd...", 
但以下所有结果均为零:

request.session[:session_id].inspect 
session[:session_id].inspect
session['session_id'].inspect 
会话的输出。检查:

#<CGI::Session:0x104dff278 
@write_lock=true, 
@data={
    :user_id=>nil, 
    :privilege_id=>nil, 
    :after_login=>{"action"=>"index", "controller"=>"home"}, 
    :csrf_id=>"34a78413704ac92ee0eb276339b1af76", "flash"=>{}
    }, 
@new_session=false, 
@dbprot=[
        #<CGI::Session::CookieStore:0x104dfe8a0 
        @secret="ee912af8f735b1acf19...", 
        @data={:
                user_id=>nil, 
                :privilege_id=>nil, 
                :after_login=>{"action"=>"index", "controller"=>"home"}, 
                :csrf_id=>"34a78413704ac92ee0eb276339b1af76", "flash"=>{}}, 
                @digest="SHA1", 
                @original="BAh7CjoMd...", 
                @cookie_options={
                        "name"=>"_vendor_sandbox_session", 
                                "http_only"=>true, 
                                "secure"=>nil, 
                                "expires"=>nil, 
                                "domain"=>nil, 
                                "path"=>"/"}, 
               @session=#<CGI::Session:0x104dff278 ...>>], 
               @dbman=#<CGI::Session::CookieStore:0x104dfe8a0 
               @secret="ee912af8f735b1acf19...", 
               @data={
                        :user_id=>nil, 
                        :privilege_id=>nil, 
                        :after_login=>{
                    }, 
                    :csrf_id=>"34a78413704ac92ee0eb276339b1af76", 
                    "flash"=>{}}, 
                    @digest="SHA1", 
                    @original="BAh7CjoMd...", 
                    @cookie_options={
                                        "name"=>"_vendor_sandbox_session", 
                                        "http_only"=>true, 
                                        "secure"=>nil, 
                                        "expires"=>nil, 
                                        "domain"=>nil, 
                                        "path"=>"/"
                                    }, 
                    @session=#<CGI::Session:0x104dff278 ...>>, 
                    @session_id="BAh7CjoMd...", 
                    @cgi=#<CGI:0x104f73c30 
                    @cookies={
                                "_vendor_sandbox_session"=>["BAh7CjoMd..."], 

                    }, 
                    @params={}, 
                    @output_hidden=nil, 
                    @multipart=false, 
                    @env_table={
                                    "REQUEST_METHOD"=>"GET", 
                                    "SERVER_NAME"=>"localhost", 
                                    "SERVER_PORT"=>"3000", 
                                    "HTTP_CONNECTION"=>"keep-alive", 
                                    "QUERY_STRING"=>nil, 
                                    "PATH_INFO"=>"/login", 
                                    "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.8.7/2012-02-08)", 
                                    "REQUEST_URI"=>"http://localhost:3000/login", 
                                    "HTTP_ACCEPT_LANGUAGE"=>"en-US,en;q=0.5", 
                                    "GATEWAY_INTERFACE"=>"CGI/1.1", 
                                    "REMOTE_HOST"=>"127.0.0.1", 
                                    "REMOTE_USER"=>nil, 
                                    "SERVER_PROTOCOL"=>"HTTP/1.1", 
                                    "HTTP_USER_AGENT"=>"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/20100101 Firefox/17.0", 
                                    "HTTP_CACHE_CONTROL"=>"no-cache", 
                                    "HTTP_ACCEPT"=>"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", 
                                    "REMOTE_ADDR"=>"127.0.0.1", 
                                    "HTTP_COOKIE"=>_vendor_sandbox_session=BAh7CjoMdXNlcl9p...", 
                                    "HTTP_PRAGMA"=>"no-cache", 
                                    "HTTP_ACCEPT_ENCODING"=>"gzip, deflate", 
                                    "HTTP_HOST"=>"localhost:3000"}, 
                                    @output_cookies=nil, 
                                    @stdin=#<StringIO:0x104f73c58
#无,
:privilege_id=>nil,
:登录后=>{“操作”=>“索引”,“控制器”=>“主页”},
:csrf_id=>“34a78413704ac92ee0eb276339b1af76”,“flash”=>{}
}, 
@新建会话=false,
@dbprot=[
#零,
:privilege_id=>nil,
:登录后=>{“操作”=>“索引”,“控制器”=>“主页”},
:csrf_id=>“34a78413704ac92ee0eb276339b1af76”,“flash”=>{},
@digest=“SHA1”,
@原件=“BAh7CjoMd…”,
@cookie_选项={
“名称”=>“\u供应商\u沙盒\u会话”,
“仅限http_”=>true,
“安全”=>零,
“expires”=>nil,
“域”=>nil,
“路径”=>“/”},
@会话=#>],
@dbman=#零,
:privilege_id=>nil,
:登录后=>{
}, 
:csrf_id=>“34a78413704ac92ee0eb276339b1af76”,
“flash”=>{},
@digest=“SHA1”,
@原件=“BAh7CjoMd…”,
@cookie_选项={
“名称”=>“\u供应商\u沙盒\u会话”,
“仅限http_”=>true,
“安全”=>零,
“expires”=>nil,
“域”=>nil,
“路径”=>“/”
}, 
@会话=#>,
@session_id=“BAh7CjoMd…”,
@cgi=#[“BAh7CjoMd…”,
}, 
@params={},
@输出_hidden=nil,
@多部分=假,
@环境表={
“请求_方法”=>“获取”,
“服务器名称”=>“本地主机”,
“服务器端口”=>“3000”,
“HTTP_连接”=>“保持活动状态”,
“查询字符串”=>nil,
“路径信息”=>“/登录”,
“服务器软件”=>“WEBrick/1.3.1(Ruby/1.8.7/2012-02-08)”,
“请求URI”=>“http://localhost:3000/login", 
“HTTP_ACCEPT_LANGUAGE”=>“en-US,en;q=0.5”,
“网关接口”=>“CGI/1.1”,
“远程_主机”=>“127.0.0.1”,
“远程用户”=>nil,
“服务器_协议”=>“HTTP/1.1”,
“HTTP_USER_AGENT”=>“Mozilla/5.0(Macintosh;Intel Mac OS X 10.7;rv:17.0)Gecko/20100101 Firefox/17.0”,
“HTTP\U缓存\U控制”=>“无缓存”,
“HTTP_ACCEPT”=>“text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8”,
“远程地址”=>“127.0.0.1”,
“HTTP_COOKIE”=>_供应商_沙盒_会话=BAh7CjoMdXNlcl9p…”,
“HTTP_PRAGMA”=>“无缓存”,
“HTTP_ACCEPT_ENCODING”=>“gzip,deflate”,
“HTTP_HOST”=>“localhost:3000”},
@输出=零,

@stdin=#您是如何创建会话的?session.inspect的输出是什么?如果它们在模型中,您可以使用session.id。如果它们存储在数组或散列中,您可能必须首先识别类似会话[0][:session\u id]的个体

正确答案是session.session\u id


谢谢!

您是如何创建会话的?会话的输出是什么?检查
?如果它们在模型中,您可以使用
session.id
。如果它们存储在数组或散列中,您可能需要首先识别个体,如
会话[0][:session\u id]
。更新了问题,现在显示session.inspect outputJustin,我通过调用session.session\u id解决了此问题。您的帮助使我找到了该解决方案,因此请提交答案,以便我可以给您评分。谢谢