Ruby on rails 正在获取会话ID值
我正在尝试在Rails 2.2.2应用程序中获取会话id 我检查了Rails文档,并从语法上尝试了一些不同的东西 当我执行request.inspect或session.inspect时,我看到@session\u 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
@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解决了此问题。您的帮助使我找到了该解决方案,因此请提交答案,以便我可以给您评分。谢谢