ruby-on-rails - Rails 5.2 ActionController::InvalidAuthenticityToken
问题描述
升级到 Rails 5.2 后,我的应用程序中的所有表单都开始出现ActionController::InvalidAuthenticityToken错误。我通过禁用所有表单的 Turbolinks 来解决这个问题,这可行但不是一个很好的解决方案。
搜索互联网,推荐的常见解决方案似乎是禁用protect_from_forgery
skip_before_action :verify_authenticity_token, raise: false
- https://github.com/ForestAdmin/forest-rails/pull/254
- Rails 5.2 一些控制器动作给出了 InvalidAuthenticityToken
- https://github.com/nsarno/knock/issues/208
- https://github.com/rails/rails/commit/ec4a836919c021c0a5cf9ebeebb4db5e02104a55
为什么我们需要禁用protect_from_forgery,这不会造成安全漏洞吗?
编辑
csrf_meta_tags
在布局中。
解决方案
推荐阅读
- c# - 主应用程序包含子应用程序但令牌未通过
- c# - 如何加密密码?(csharp/dotnet - 天蓝色 sql 数据库)
- javascript - react-native-table-component 使用状态来渲染表数据
- xcode - 哪个版本的 Xcode 支持 iOS 12.2?
- python - 将路径转换为列表
- database - 使用 Graphql 突变更新 Postgres 表中的列值
- javascript - 将值传递给父组件未定义
- react-native - 尝试从嵌套对象中检索键/值后,“TypeErroe:无法读取未定义的属性名称”
- python - 使用另一个容器连接 Cassandra 容器
- css - CSS - 选择一个包含子类的类