例:
session[:ID]=user.ID
Session是一个全局哈希.我的疑问是,如果session是一个全局哈希,那么如果有多个用户尝试登录,那么会话变量就会得到
是否覆盖?因为,只有一个全局哈希.因此,如果有数百万用户登录,那么“session [:ID]”如何保持相同
所有用户会话.是否可以在单个变量中存储多个值.以及如何删除特定的会话
用户.那么,如何在rails中处理会话?
我们来看看2个典型的会话商店.
加密的cookie商店
这是Rails应用程序的默认会话存储. Rails序列化然后将整个会话哈希加密成cookie,并将这些cookie存储在客户端(例如浏览器)上.每次请求到达Rails应用程序时,Rails解密然后将该会话cookie反序列化为哈希.该哈希是方法会话返回的内容.
Redis会话商店
此会话存储不随Rails一起提供.这是一个独立的宝石.
使用此会话存储,Rails序列化会话,为其提供ID(称为会话ID),并将ID哈希对存储到Redis中.然后Rails将会话ID设置为cookie并将该cookie发送给客户端.每次请求到达Rails应用程序时,Rails都会从cookie中检索会话ID,从Redis获取与该会话ID关联的序列化会话,并将其反序列化为哈希.该哈希是方法会话返回的内容.
总结以上是内存溢出为你收集整理的ruby-on-rails – 会话如何在Rails中运行全部内容,希望文章能够帮你解决ruby-on-rails – 会话如何在Rails中运行所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)