繁体   English   中英

我的 rails 应用程序中的随机 ActionController::InvalidAuthenticityToken

[英]random ActionController::InvalidAuthenticityToken in my rails app

我的应用程序上有随机的 CSRF 错误ActionController::InvalidAuthenticityToken 比如,100 个请求中就有一个或更多。 为什么这些错误会像这样随机出现?

我在一些常规的<%= form_with %>标签上找到了它们,一些在 javascript 帖子上(但它大部分时间都有效,因为我每次都将meta[name='csrf-token']X-CSRF-TOKEN ),一些关于devise/registrations#create等...

为什么它有时会发生而不是每次都会发生?

问候

当 Rails 会话过期时,CSRF 令牌将过期(某些配置除外)。

这是引发此错误的场景:

如果用户在页面上显示了一个表单,离开几十分钟(取决于会话持续时间),然后重新填写表单,则会话(和令牌)可能已过期。 然后在提交时 Rails 将引发InvalidAuthenticityToken错误。

更多关于这里Rails CSRF 令牌 - 它们会过期吗?

另一种情况涉及(坏)机器人:机器人可以在不使用令牌的情况下提交表单。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM