【问题标题】:Rails how to check size of current session (cookies)Rails如何检查当前会话的大小(cookies)
【发布时间】:2017-12-07 04:28:16
【问题描述】:

我很高兴将东西扔到会话中,而不是直接保存到数据库中(如多步表单),并认为这 4kb 绰绰有余。因为我使用了 Devise,所以我认为它使用了一些会话存储,但在我尝试 p session 和 OH 之前感觉很安全!我的终端无法打印其中的所有数据。这些数据很难理解 - 我传递了一些项目,还有一些本地路线和其他奇怪的东西。

所以不,我想知道如何在某些阶段检查它的大小?我发现了类似的question,但之后我得到@encryptor为未定义/无..

也试过了:

@encryptor = ActiveSupport::MessageEncryptor.new(secret, cipher: encrypted_cookie_cipher, serializer: SERIALIZER)

data = session.to_hash.delete_if { |k,v| v.nil? }
data = @encryptor.encrypt_and_sign(serialize(name, data))
p data.bytesize

但是secret 是未定义的:

未定义的局部变量或方法`secret'

【问题讨论】:

  • 什么是secret?,在哪里定义的?
  • link - 我知道它是在那里定义的局部变量,但如果我复制/粘贴它的定义,那么request 也将是未定义的。或者它可能是 Ruby 中的某种全局变量..?
  • 你发给我代码,但是是Rails存储库,不应该是ActiveSupport::MessageEncryptor.new('secret', 'signature_secret'),以secret为密钥吗?字符串数据类型对象?
  • 来吧,没有人能解释如何做到这一点..? @Sebastian Palma - 抱歉,我不太了解该代码
  • 我不能:c,我昨天尝试检查 cookie 大小,但没有运气。那是你真正想要的吗? cookie 大小,仅此而已?

标签: ruby-on-rails session-cookies


【解决方案1】:

我还试图找到一种方法来显示带有导轨的 cookie 大小,但没有成功。 但另一种检查当前会话 cookie 大小的方法是浏览器中的developer tool

您可以在此处查看所有带有一些信息及其大小的 cookie。 这可能不是最好的方法,但总比没有好。

【讨论】:

  • 据我所知,字节大小为 422b -> 0,422 kb。就像你写的那样。
猜你喜欢
  • 2016-11-26
  • 2016-12-16
  • 2021-06-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-14
  • 2020-09-20
  • 1970-01-01
相关资源
最近更新 更多