Die*_*ego 5 ruby-on-rails csrf protect-from-forgery
我正在使用Rails 3.0.2,protect_from_forgery默认情况下它在application_controller.rb中.
我想触发一个InvalidAuthenticityToken.
要做到这一点,我已将此javascript添加到我的页面:
$('input[name=authenticity_token]').val('aaa')
Run Code Online (Sandbox Code Playgroud)
使用Firebug检查DOM我看到authenticity_token隐藏字段已正确更新.
如果我提交表单并从服务器检查日志,我会看到相对参数已正确设置为'aaa'.我希望得到一段InvalidAuthenticityToken时间处理请求,因为它是正确的!
这怎么可能?
jde*_*eno 12
真实性令牌/ csrf行为的文档已过期.该InvalidAuthenticityToken例外在这些情况下不再抛出,而不是你的会话刚复位.如果您想以不同方式(或旧方法)处理此问题,您可以在handle_unverified_request控制器上定义自己的行为.