我正在使用 jruby 和 trinidad 运行 rails 3,并且不断看到这些日志消息:
INFO http-bio-3001-exec-15 jruby.rack - cache: [POST /something] invalidate, pass
这到底是什么意思?此外,控制器中的代码也永远不会运行。这是缓存的问题吗?
每当 Rails 收到 POST 请求时,它都会执行一些安全检查以确保请求"有效"。检查是通过解析CSRF真实性令牌来执行的,这些令牌必须与POST请求中的表单一起提交。
如果您无法编辑向 rails 应用程序发出请求的表单,则可以逐个控制器跳过检查:
class Foo < ApplicationController
skip_before_filter :verify_authenticity_token
或者,您也可以选择对控制器中的特定方法执行此操作:
class Foo < ApplicationController
skip_before_filter :verify_authenticity_token, :only => [:create]
你可以在这里阅读它
cache: [POST/something] 失效,通过
这是说发出了 POST 请求,并且无效的 pass 意味着缓存不能用于这种类型的请求。您将获得无效,通过任何更改请求(发布,放置,删除等)