javascript - 使用 AJAX 在 rails 上加载 CSRF token

标签 javascript ruby-on-rails ajax ruby-on-rails-3 csrf

我决定只加载一个页面来实现我的 Rails 站点,并通过 AJAX 完成其他所有操作。问题是在 meta 中生成的 CSRF token 一旦用于提交注册或登录表单就会失效。如何在不重新加载页面的情况下更新它?

最佳答案

我认为 rails 不会在每次请求(或发布或其他)后使 CSRF 元 token 无效(如果没有,像 backbone.js 这样的框架将有一段艰难的时期:)。

https://github.com/rails/rails/blob/7fb99e5743d88c04357e09960d112376428a6faa/actionpack/lib/action_controller/metal/request_forgery_protection.rb#L100

您可能在您认为是无效请求之前发出请求,但没有正确的 token ,因此 rails 会删除您的 session ,并且后续请求被标记为无效,即使它们通过了先前正确的 token 。

关于javascript - 使用 AJAX 在 rails 上加载 CSRF token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10694841/

相关文章:

ruby-on-rails - database.yml 中应该包含什么以在没有数据库的情况下使用 rails?

ruby-on-rails - rails : Check uniqueness of decrypted data

javascript - 使用 TTL 索引未能使 MongoDB 文档过期

javascript - 为 JavaScript 创建自定义构建系统以进行自动构建的最佳方法?

ruby-on-rails - 跟踪值(value)随时间变化的算法

javascript - 动态加载 wordpress wp_editor (ajax)

jquery - OnActionExecuting 事件未返回 jsonResult

java - 使用 $ ('html' ).html(data); Bootstrap 未 100%

javascript - 验证输入字符串并将其转换为新的 Date 对象

javascript - map 区域 : onfocus=blur() works in IE but now adds an outline to Firefox?