ruby-on-rails – 可以将哈希存储在cookie中吗?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 可以将哈希存储在cookie中吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
任何人都知道我是否可以在Cookie中放置哈希?
这样的事情:cookies [:test] = {:top => 5,:中= = 3,: bottom => 1}

谢谢

解决方法

我想看看序列化哈希存储它.然后反序列化它来检索它.

串行化哈希时,结果将是一个编码的字符串.这个字符串可以被解码,以获得原始对象.

您可以使用YAML或JSON.两者都很好地支持Ruby.

一个YAML的例子

require "yaml"

cookies[:test] = YAML::dump {a: 1,b: "2",hello: "world"}
# => "---\n:a: 1\n:b: '2'\n:hello: world\n"

YAML::load cookies[:test]
# => {a: 1,b: 2,c: "world"}

一个JSON示例

require "json"

cookies[:test] = JSON.generate {a: 1,hello: "world"}
# => '{"a":1,"b":"2","hello":"world"}'

JSON.parse cookies[:test]
# => {"a"=>1,"b"=>"2","hello"=>"world"}

注意:当使用JSON.parse时,生成的对象将具有基于字符串的键

猜你在找的Ruby相关文章