0

我正在使用带有 Rails 4.2.6 的 sidekiq 4.1.4。

路由文件有以下代码:

require 'sidekiq/web'
mount Sidekiq::Web, at: '/sidekiq'

当我通过http://localhost:3000/sidekiq访问 sidekiq UI 时,它显示错误:

{
    "errors": [
        "Unauthorized Request"
    ]
}

我正在使用守望者身份验证,初始化程序文件具有以下代码:

Rails.application.config.middleware.insert_after ActionDispatch::ParamsParser, Warden::Manager do |manager|
  manager.default_strategies :authentication_token
  manager.failure_app = UnauthenticatedController
end
4

1 回答 1

0

通过以下更改,我可以在http://my_domain.com/sidekiq访问 sidekiq:

使用以下代码创建一个初始化程序:

class MountedAppAuth
  def initialize( app )
    @app = app
  end

  def call( env )
    @app.call( env )
  end
end

在 routes.rb 中:

require 'sidekiq/web'
Sidekiq::Web.use MountedAppAuth
mount Sidekiq::Web, at: '/sidekiq'
于 2017-05-31T07:49:21.303 回答