Rails内置的CSRF预防对我们正在进行的一些自动负载测试造成了一些问题,我想在整个过程中将其关闭。我该怎么做?
答案 0 :(得分:27)
我喜欢简单的问题和明确的答案。
#I go in application.rb
self.allow_forgery_protection = false
如果您只想将其用于测试,则可将其移至其中一个环境文件中(显然,您将触及Application
,而不是self
)。你也可以这样写:
#I still go in application.rb
self.allow_forgery_protection = false unless ENV["RAILS_ENV"] == "production"
有关详细信息,请参阅here。 (继续Rails在2年历史博客文章中提供核心功能文档的精彩传统,这些文章是从提交日志中提取的。)
答案 1 :(得分:3)
在Rails 3中,删除protect_from_forgery
app/controllers/application_controller.rb
命令