【问题标题】:How can I read a cookie with a "-" in its name?如何读取名称中带有“-”的 cookie?
【发布时间】:2013-09-24 14:22:00
【问题描述】:

我有一个名为 ss-id 的 cookie(由 servicestack .net auth 插件创建)

我可以看到 cookie 在 Chrome 中

调用:

cookie: <%= cookies[:ss-id] %>

由于“-”字符而导致错误(我猜)

调用:

cookie: <%= cookies[:"ss-id"] %>

什么都没有。

有人知道我该怎么做吗?

【问题讨论】:

  • 试试cookies["ss-id"]
  • 不是和我的例子一模一样吗? cookie 确实来自顶级域,因此它位于 .domain.com 中,而 RoR 应用程序位于 dev.domain.com 中 - 这会影响这一点吗?
  • 不,它们不一样。 :"ss-id" 是一个符号,"ss-id" 是一个 String
  • 啊 - 错过了那个细节! :)
  • 只是为了澄清这一点 - 你所说的符号是什么意思?

标签: ruby-on-rails ruby cookies


【解决方案1】:

您似乎正在尝试在视图中使用 cookie。尝试像这样在控制器中创建一个实例变量:

controller.rb

@cookie = cookies[:ss-id]

在你看来:

<%= @cookie %>

【讨论】:

  • '-' 不能是符号名称的一部分
  • #<0x3663fa8>
【解决方案2】:

如果你真的想要你的符号:

cookies[:'ss-id']

但我猜哈希的访问权限是无关紧要的,所以:cookies['ss-id'] 也应该没问题。

【讨论】:

  • 就是这个!正如你回答的那样,我刚刚开始工作。这只是一个概念验证应用程序,所以不用担心这很讨厌 - 它只是为了让核心部分像一个尖峰一样工作
猜你喜欢
  • 1970-01-01
  • 2021-11-03
  • 1970-01-01
  • 1970-01-01
  • 2016-09-27
  • 1970-01-01
  • 1970-01-01
  • 2017-07-26
  • 1970-01-01
相关资源
最近更新 更多