我使用 gem 'rack-oauth2-server'。目前我需要通过移动应用程序的电子邮件/密码添加对 API 的访问。
关于问题:Gem 提供来自“oauth/access_token”端点的访问令牌。这需要下一个参数:'email'、'password'、'client_id'、'secret'。'client_id' 和 'secret' - 来自 mongodb 集合的 oauth 客户端字段。客户有设置范围访问。我的用户类型很少。对于每种用户类型,访问范围不同(不同的 oauth 客户端)。
所以,一个问题:我希望允许任何用户类型从移动应用程序访问 api,但是,在登录之前,我不知道哪种类型的用户。因此,移动应用程序无法知道应该将哪个 client_id 和 sercret 传递给“oauth/access_token”请求。
可能存在一些用于 Rails 请求的预钩子或另一种添加参数到动态请求的方法(服务器端)?注意:不能使用 before_filter,因为 'rack-oauth2-server' 在回调之前调用。
PS对不起我的英语不好。