1

我刚刚开始学习 Ruby/Rails,遵循了一些指南和视频。基本上,从我收集的信息来看,rails 的重点是假设默认值,并将它们隐藏在幕后,然后当您想要更改功能时,您可以。

当我创建一个新项目时,我注意到 ApplicationController 中的“protect_from_forgery”行。为什么当我在 IDE 中创建项目时会在文件中创建它,而不是在幕后/超类中保持默认设置?似乎对我所读的内容有点反常?

4

1 回答 1

3

我认为答案是您需要知道默认情况下,csrf 保护在任何地方都是开箱即用的。这只是一种确保您知道它的方法,以防您在某些情况下需要禁用它。如果它被隐藏在幕后,并且您想为某些操作禁用它,则必须四处挖掘并找出如何首先启用 csrf 保护。Rails 说:“看这很重要,如果您想要的不是默认行为,请从这里开始!”

于 2012-05-02T16:02:10.623 回答