Ruby on rails Rails表单\u真实性\u令牌在POST请求后不重新生成

Ruby on rails Rails表单\u真实性\u令牌在POST请求后不重新生成,ruby-on-rails,ruby-on-rails-3.1,csrf,authenticity-token,Ruby On Rails,Ruby On Rails 3.1,Csrf,Authenticity Token,我的印象是,Rails将在任何POST、PUT或DELETE操作之后重新生成表单\u authenticity\u令牌。但由于某些原因,在成功发布到用户资源后,表单\u真实性\u令牌不会重新生成。我可以自由发布尽可能多的时间,我想与相同的CSRF令牌一遍又一遍 我有一个名称空间的API,我正在使用RABL gem来构建我的响应。这就是我设置一切的方式 class Api::V1::UsersController < Api::V1::ApplicationController ...

我的印象是,Rails将在任何POST、PUT或DELETE操作之后重新生成
表单\u authenticity\u令牌。但由于某些原因,在成功发布到用户资源后,
表单\u真实性\u令牌
不会重新生成。我可以自由发布尽可能多的时间,我想与相同的CSRF令牌一遍又一遍

我有一个名称空间的API,我正在使用RABL gem来构建我的响应。这就是我设置一切的方式

class Api::V1::UsersController < Api::V1::ApplicationController
  ...
  def create
    @user = User.new(params[:user])
    render "show", :status => (@user.save ? :ok : :unprocessable_entity)
  end
  ...
end

class Api::V1::ApplicationController < ApplicationController
  layout '/api/v1/layouts/application.json.erb'
  respond_to :json
  before_filter :authenticate_user!
  ...
end

class ApplicationController < ActionController::Base
  protect_from_forgery
end
class Api::V1::UsersController(@user.save?:ok::不可处理的_实体)
终止
...
终止
类Api::V1::ApplicationController
帖子运行正常,development.log或控制台
$rails s
日志中没有错误或警告

我在
create
方法中检查了
verified\u request?
,它返回true。我已经删除了渲染并使用与
show.json.rabl
视图相同的代码设置了
create.json.rabl
视图。。。没有骰子

我正在运行Rails 3.1.3 w/Ruby 1.9.2p290 w/a cookie会话存储


真实性令牌正在通过请求头(X-CSRF-token)发送。

您的印象不正确。从表单的相关部分可以看出,在会话的整个生命周期中,真实性令牌保持不变。

您的印象是错误的。正如您可以从表单的相关位看到的,真实性令牌在会话的生存期内保持不变