使用设计在数据库中检查提交的令牌与真实性令牌

时间:2012-02-20 02:32:22

标签: ruby-on-rails authentication controller devise

我正在使用Chrome扩展程序将数据发送到我的Rails应用程序(staged_images控制器)。所以我有一个发送数据的表单,以及一个身份验证令牌。每个用户都有一个由Devise生成的令牌,并保存在Users表中。我现在需要做的是在控制器中接收该数据,并检查提交的令牌与存储在Users表中的令牌。

因此,我的控制器中的创建操作应如下所示:

def create
    @user = User.find(params[:staged_image][:user_id])
    if @user.authentication_token == submitted_token # this is pseudo code, don't know exactly what to say here
      # execute code
    else
      # raise error
    end
end

我只是遇到了如何检查一个令牌与另一个令牌的细节问题。我是新手。救救我!

由于

1 个答案:

答案 0 :(得分:1)

您应该转到令牌控制器并在顶部设置过滤器,并在通话中传递auth_token。{/ p>

http://yoursite/staged_images?auth_token=YOUR_STORED_TOKEN'

如果令牌无效,Devise将引发异常。

您可以使用助手class staged_images < ApplicationController before_filter :authenticate_user! end

访问用户信息