ruby-on-rails - doorkeeper gem 在成功验证用户名和密码后给出 "invalid_client"

标签 ruby-on-rails

http://localhost:3000/oauth/token

{
"error": "invalid_client",
"error_description": "Client authentication failed due to unknown client, no client authentication included, or unsupported authentication method."
}

在实现门卫时..

于 2021-06-13 19:56:20 +0530 开始为::1 发布“/oauth/token” Doorkeeper 处理::TokensController#create as / 参数:{"grant_type"=>"password", "username"=>"bhagwan", "password"=>"[FILTERED]"} 用户负载 (7.0ms) SELECT "users". FROM "users"WHERE "users"."email"= ?限制 ? [[“电子邮件”,“bhagwan”],[“LIMIT”,1]] ↳ config/initializers/doorkeeper.rb:19:in `block (2 levels) in ' 在 1654 毫秒内完成 401 未经授权( View :0.5 毫秒 | ActiveRecord:28.7 毫秒 | 分配:5869)*

在 doorkeeper.rb 中

grant_flows %w[password]

resource_owner_from_credentials do
User.find_by(email: params[:username])
&.authenticate(params[:password]) || nil
end

最佳答案

您可以使用 skip_client_authentication_for_password_grant 配置选项为您的案例跳过客户端身份验证:

Doorkeeper.configure do
  skip_client_authentication_for_password_grant true
end

关于ruby-on-rails - doorkeeper gem 在成功验证用户名和密码后给出 "invalid_client",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67966664/

相关文章:

ruby-on-rails - 如果在 ruby​​ 中两次编写相同的方法,我们怎么调用它

ruby-on-rails - 如何在 Rails 6 中使用自定义 jQuery

ruby-on-rails - Resque清除失败的作业成功重试

ruby-on-rails - 当尝试使已捕获的平衡付款的保留无效时,为什么响应是 is_void == true 的保留?

ruby-on-rails - 每当插件帮助

ruby-on-rails - 为什么在远程发布与远程更新帖子时出现 “no route”错误?

ruby-on-rails - Wicked-pdf 在 Heroku 中超时

ruby-on-rails - rake 任务因 US-ASCII 中的无效字节序列而失败

mysql - 将 Rails 的默认数据库更改为 MySQL

ruby-on-rails - 如何在 Rails 中选择字段值最低的记录