ard*_*igh 1 ruby-on-rails csrf
升级到Rails 5.2之后,我开始对应用程序中的所有表单都收到一个ActionController :: InvalidAuthenticityToken错误。我通过禁用所有形式的Turbolink来解决此问题,这种方法虽然有效,但不是很好的解决方案。
搜寻互联网,推荐的常见解决方案似乎是禁用protect_from_forgery
skip_before_action :verify_authenticity_token, raise: false
为什么我们需要禁用protect_from_forgery,而这不会产生安全漏洞?
编辑
csrf_meta_tags 在布局中。
为Rails 5.2 default_protect_from_forgery是默认启用的ActionController::Base。
config.action_controller.default_protect_from_forgery = false
Run Code Online (Sandbox Code Playgroud)
参考文档:
config.action_controller.default_protect_from_forgery确定是否在ActionController:Base上添加了伪造保护。默认情况下为false,但在加载Rails 5.2的默认值时启用。
| 归档时间: |
|
| 查看次数: |
1758 次 |
| 最近记录: |