ruby_on_rails_cookie_session_大小

 

 

Rails中默认把session存入了cookie中,那么session的大小就受到了cookie大小的限制。

session默认的cookie名字为_project_name_session,看看实际网站的例子:

_javaeye3_session_  好像javaeye再rb的带领下用rails3重写了网站,项目命名也加了个3

_tuan800_session

 

那么cookie大小是多少呢。待找个官方证明再补充下,先用google来说话吧。

可以有多个cookie键值对,每个值最大为4k

 

看个实际的例子:

      session[:user_id] = user.id
      #session[:bbb] = "j"*4096 #error
      cookies[:a] = "a"*1024 #ok~
      cookies[:b] = "b"*1024 #ok~
      cookies[:c] = "c"*1024 #ok~
      cookies[:d] = "d"*1024 #ok~
      cookies[:e] = "e"*1024 #ok~
      cookies[:f] = "f"*3072 #ok~
      cookies[:g] = "g"*4000 #ok~
      cookies[:h] = "h"*4095 #no error but this cookie can not work
      cookies[:i] = "i"*4096 #no error but this cookie can not work
 

从cookie使用来看,javaeye好像还是比较专业些:

命名都用了下划线开头

cookie个数少

 

+

+

+

“结束”

+

+

+

 

 

 

你可能感兴趣的:(session)