【问题标题】:Rails 3.2.1 - cannot parse Cookie header: undefined method `size' for nil:NilClassRails 3.2.1 - 无法解析 Cookie 标头:nil:NilClass 的未定义方法“大小”
【发布时间】:2012-01-29 16:13:00
【问题描述】:

我已将 rails gem 更新到 3.2.1 版并创建了一个虚拟测试应用程序,但执行时出现此错误:

NoMethodError
cannot parse Cookie header: undefined method `size' for nil:NilClass

有人知道帮帮我吗?

【问题讨论】:

  • 错误消息说方法'size'已经在一个nil对象上被调用。如果您需要帮助,您应该发布错误的堆栈跟踪,以及发生错误的代码部分
  • 这是一个新的应用程序,没有任何代码。我刚刚创建了 WelcomeController,删除了 public/index.html 并访问了localhost:3000。控制台日志:pastebin.com/BA6TcSei

标签: ruby-on-rails ruby ruby-on-rails-3.2


【解决方案1】:

这似乎是机架的问题。我可以通过暂时将我的 Gemfile 指向 master 来修复它。

gem 'rack', git: 'git://github.com/rack/rack.git'

【讨论】:

    【解决方案2】:

    【讨论】:

    • 但我认为不能经常要求客户清除他们的 cookie,有人知道这是否会得到解决吗?
    【解决方案3】:

    出于历史目的,研究此问题的任何人都应该知道此错误已在 2012 年 8 月 10 日修复。

    更新到 Rack 1.4.2 或 1.5.0 或更新版本应该可以解决这个问题。

    https://github.com/rack/rack/issues/386#issuecomment-7660902

    【讨论】:

      【解决方案4】:

      也有这个问题。这是由请求标头中发送的 cookie 值中的逗号引起的。具有错误值的 cookie 是由在同一域(不同子域)上运行的不同站点设置的。删除带逗号的坏 cookie 解决了问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-06-06
        • 2015-06-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多