rails 3 authenticity_token, как он генерируется - PullRequest
2 голосов
/ 06 августа 2011

Кто-нибудь знает, как генерируется аутентичный_токен rails3?Я заметил, что значение токена формы не изменяется при обновлении страницы формы.кто это генерирует?на основе сеансового cookie?вовремя?secret_key

Ответы [ 2 ]

6 голосов
/ 06 августа 2011

AuthenticityToken - это, по сути, вызов ActiveSupport::SecureRandom.base64(32), о котором вы можете прочитать здесь http://api.rubyonrails.org/classes/ActiveSupport/SecureRandom.html

Редактировать - Обновлено, чтобы включить более свежие изменения в соответствии с ответом Ламбарта ниже.

В Rails> = 3.1 ActiveSupport :: SecureRandom не рекомендуется в пользу SecureRandom из стандартной библиотеки Ruby (кажется, начиная с Ruby 1.9.3).

Как бы он ни создавался, этот токен сохраняется в сеансе (т. Е. Длится его время жизни).

Спасибо Ламбарт .

0 голосов
/ 24 октября 2013

В Rails <3.09 <code>AuthenticityToken генерируется вызовом ActiveSupport::SecureRandom.base64(32), который вы можете прочитать о здесь .

В Rails> = 3.1, ActiveSupport::SecureRandomустарела в пользу SecureRandom из стандартной библиотеки Ruby (кажется, начиная с Ruby 1.9.3).

Однако, если он сгенерирован, этот токен сохраняется в сеансе (т. е. ондлится в течение всей сессии).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...