Bra*_*ams 5 session ruby-on-rails
我无法在本地环境和外部暂存环境中保持 Rails 会话。现在我只是在做一些基本的事情,比如session[:cart_id]=1在我的一个控制器中。如果我重新加载页面会话出现空{}。我一定遗漏了一些基本的东西,因为我在网上找不到任何关于这很常见的东西。
更新 1
即使是最简单的代码也显示会话不持久,例如我可以做一些像session[:counter] = session[:counter].to_i + 1我的动作一样简单的事情,然后= debug session在我的视图中,每次我刷新浏览器时,我都会得到:
{} {"session_id"=>"280031b7eb3b4bf612da85acc8815b3b", "counter"=>1}
并且session_id每次都会生成一个新的。
更新 2
我:domain => :all从我的会话存储中删除了该选项,事情看起来好多了,但仍然没有持久化。现在session_id只生成一次,所以它一直存在。但是如果我在会话中存储一个整数,它仍然不会持续到下一个请求。
小智 6
我有同样的问题,这让我发疯。
原来,我有一个protect_from_forgery在我ApplicationController里面默默地用一个NullSession.
我在跑步时注意到了这一点raise session.class.inspect。
protect_from_forgery with: :exception相反,使用可以正确地揭示潜在的问题。
| 归档时间: |
|
| 查看次数: |
3094 次 |
| 最近记录: |