たまにCan't verify CSRF token authenticity.

時々ログにCan’t verify CSRF token authenticity.が表示されます。
なんでかなーと思っていたら一つ再現パターンを見つけました。

  1. Aフォームを表示
  2. Bフォームを別タブで表示
  3. Bフォームでsubmit
  4. AフォームでsubmitでCan’t verify CSRF token authenticity.発生。

AフォームとBフォームで同じcsrf tokenが発行されますが、Bフォームのsubmitでcsrf tokenが使われて値が変わってしまうため
Aフォームのcsrf tokenが古くなってしまいcsrfエラーが発生します。

ごく稀によくあるやつでした。

Comments