さまざまなフローを使用して、ドアキーパーをいじりました。パスワード フロー、クライアント資格情報フローで成功しましたが、認証コード フローで次のエラーが発生しました。
NoMethodError in Doorkeeper::AuthorizationsController#new
undefined method `id' for nil:NilClass
以下に示すように、承認ボタンをクリックしたとき:
エラーページ:
助けてください
さまざまなフローを使用して、ドアキーパーをいじりました。パスワード フロー、クライアント資格情報フローで成功しましたが、認証コード フローで次のエラーが発生しました。
NoMethodError in Doorkeeper::AuthorizationsController#new
undefined method `id' for nil:NilClass
以下に示すように、承認ボタンをクリックしたとき:
エラーページ:
助けてください
最後に、それは私のために働きました。問題は、config/initializers/doorkeeper.rb に User オブジェクトを返す resource_owner_authenticator ブロックがあったためです。
#config/initializers/doorkeeper.rb
resource_owner_authenticator do
User.find_by(id: session[:user_id]) || redirect_to(login_url)
end
resource_owner_from_credentials do |routes|
User.authenticate(params[:username], params[:password])
end