Ruby on rails 设计令牌认证gem查询数据库两次认证用户

Ruby on rails 设计令牌认证gem查询数据库两次认证用户,ruby-on-rails,devise,Ruby On Rails,Devise,我在我的rails5api中使用designetokenauthgem进行身份验证 class V1::HuntsController < V1::MainController include DeviseTokenAuth::Concerns::SetUserByToken before_action :authenticate_user! def index end end 当当前用户已经可用时,它为什么要为用户触发另一个数据库查询?数据库查询似乎也不会被缓存,因为加

我在我的
rails5api
中使用
designetokenauth
gem进行身份验证

class V1::HuntsController < V1::MainController
  include DeviseTokenAuth::Concerns::SetUserByToken
  before_action :authenticate_user!
  def index
  end
end
当前用户
已经可用时,它为什么要为用户触发另一个数据库查询?数据库查询似乎也不会被缓存,因为加载它需要相同的时间


我怀疑这是否是由于令牌随每个请求而改变的默认行为造成的。我已在我的
配置中禁用此功能

API身份验证的最佳选择是
jwt
是的,我在我的控制器中也观察到了类似的事情,你能不能也粘贴你的方法。@uzaif-yes。。但是
devise\u-token\u-auth
对于我来说已经足够了。@user3775217我将操作保留为空,以确保它正在运行,因为
devse\u-token\u-auth
。这不会返回任何内容。第二个
query
来自
update\u auth\u header
callback API身份验证的最佳选项是
jwt
是的,我在我的控制器中也观察到类似的事情,你能不能也粘贴你的方法。@uzaif yes。。但是
devise\u-token\u-auth
对于我来说已经足够了。@user3775217我将操作保留为空,以确保它正在运行,因为
devse\u-token\u-auth
。这不会返回任何内容。第二个
query
来自
update\u auth\u header
回调
Started POST "/v1/hunts" for 192.168.0.103 at 2016-12-07 15:41:03 +0530
Processing by V1::HuntsController#create as JSON
  Parameters: {"title"=>"dddd", "clue"=>"dd", "hunt"=>{"title"=>"dddd", "clue"=>"dd"}}
  User Load (0.2ms)  SELECT  "users".* FROM "users" WHERE "users"."uid" = ? LIMIT ?  [["uid", "raj@email.com"], ["LIMIT", 1]]
  User Load (0.2ms)  SELECT  "users".* FROM "users" WHERE "users"."id" = ? LIMIT ?  [["id", 15], ["LIMIT", 1]]
   (0.1ms)  begin transaction
   (0.0ms)  commit transaction
Completed 204 No Content in 102ms (ActiveRecord: 1.0ms)