rails 3 authenticity_token如何生成它

ene*_*key 2 ruby-on-rails

有没有人知道如何生成rails3的authenticity_token?我注意到刷新表单页面时表单标记的值不会改变.是谁生成的?基于会话cookie?准时?密钥?

Far*_*gam 6

AuthenticityToken基本上是一个调用 ActiveSupport::SecureRandom.base64(32),您可以在这里阅读http://api.rubyonrails.org/classes/ActiveSupport/SecureRandom.html

编辑 - 根据Lambart的回答,更新以包含更新的更新.

在Rails> = 3.1中,不推荐使用ActiveSupport :: SecureRandom来支持Ruby标准库中的SecureRandom(从Ruby 1.9.3开始,似乎).

无论如何生成,该令牌都存储在会话中(即它持续会话的生命周期).

谢谢Lambart.