在cookie名称中使用括号(Rails)

时间:2010-07-09 19:08:09

标签: ruby-on-rails cookies

当尝试编写/读取名称中包含括号的cookie时,似乎Rails无法处理此问题。例如:

cookies["example[]"] = "value"

这会导致cookie名称为“example%5B%5D”而不是“example []”。同样,如果我已经设置了一个名为“example []”的cookie,那么看起来Rails无法通过cookies.delete "example[]"[通过调用]正确删除它正在编码字符。

任何人都知道如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

Th rfc未指定cookie名称中的所有内容。它只是说该名称需要是文本。我猜rails正在对文本进行编码,因此括号变为%5B%5D。我认为最好避免使用Cookies中的这些字符。

答案 1 :(得分:0)

看起来这只能由hacking the Rails core完成。很糟糕,Rails开发人员以这种方式实现了它。