【发布时间】:2012-01-20 15:40:52
【问题描述】:
我正在尝试对响应 JSON 的控制器进行一些 Ajax 调用。
if session[:user]
render :json => "Some Data"
else
render :json => "You are not logged in"
end
第一次由经过身份验证的用户调用此操作时一切正常,session[:user] 是!= nil。
第二次调用它是nil!
所以似乎 Rails 在我做render :json 时就失去了它的会话。我发现在第一个调用中,rails 用一个新的覆盖了*_session-cookie。因此,rails 不知道初始的、经过身份验证的会话。
如果我不将响应呈现为 JSON,一切正常。
如何强制 rails 在 JSON 渲染页面中设置与普通视图中相同的 sessionid?
【问题讨论】:
-
尝试了多个关于此的教程 - 仍然是同一个问题