Rails日志消息:cache:[POST/action] invalidate,pass

Ric*_*ard 8 ruby-on-rails

我正在使用jruby和trinidad运行rails 3,我一直看到这些日志消息:

INFO http-bio-3001-exec-15 jruby.rack - cache: [POST /something] invalidate, pass
Run Code Online (Sandbox Code Playgroud)

这到底是什么意思?此外,控制器中的代码也永远不会运行.这是缓存问题吗?

Zai*_*far 3

每当 Rails 收到 POST 请求时,它都会执行一些安全检查以确保该请求“有效”。这些检查是通过解析CSRF真实性令牌来执行的,该令牌必须与 POST 请求中的表单一起提交。

如果您无法编辑向 Rails 应用程序发出请求的表单,您可以跳过逐个控制器的检查:

class Foo < ApplicationController
    skip_before_filter :verify_authenticity_token
Run Code Online (Sandbox Code Playgroud)

或者您也可以选择对控制器中的特定方法执行此操作:

class Foo < ApplicationController
    skip_before_filter :verify_authenticity_token, :only => [:create]
Run Code Online (Sandbox Code Playgroud)

你可以在这里读到它