相关疑难解决方法(0)

如何在 Doorkeeper::TokenController 上使用 before_action

我在使用 Doorkeeper::TokensController 时遇到了问题。
我想在请求访问令牌之前执行一些代码(如果它已创建与否,无论如何我都想记录它)使用before_action(默认路由是POST /oauth/token/ Doorkeeper::TokensController#create

我通过执行以下操作来遵循此处的文档:

配置/路由.rb

  use_doorkeeper do
    controllers tokens: 'oauth/access_tokens'
  end
Run Code Online (Sandbox Code Playgroud)

应用程序/控制器/access_tokens_controller.rb

class Oauth::AccessTokensController < Doorkeeper::TokensController
  before_action :log_auth, only: [:create]

  def log_auth
    puts "I want to log here"
  end
end
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时POST /oauth/token,我收到以下错误消息:

ActionController::RoutingError(Oauth::AccessTokensController:Class 的未定义方法“before_action”):
app/controllers/oauth/access_tokens_controller.rb:2:in 'class:AccessTokensController'
app/controllers/oauth/access_tokens_controller.rb:1:in '顶部(必填)'

我究竟做错了什么?有没有办法触发 abefore_action或等效项Doorkeeper::TokensController

ruby-on-rails oauth doorkeeper

3
推荐指数
1
解决办法
966
查看次数

标签 统计

doorkeeper ×1

oauth ×1

ruby-on-rails ×1