我目前正在实施一个 Oauth 消费者服务,该服务也将使用 Soundcloud 作为 Oauth 服务提供者。但是我遇到了以下问题:以 Facebook 或 Twitter 为例,你去那里,你登录,你填写许可表,然后你被重定向回你的应用程序。如果您第二次去那里,并且您已经登录,您基本上会跳过所有步骤并立即重定向回来。这意味着,Facebook 认识到您已经向该第三方服务授予了许可,因此它不会不断地征求您的许可。
这就是我使用 Soundcloud 时发生的事情。基本上每次我将用户重定向到 Soundcloud Oauth 连接端点时,都会显示权限表单,即使我之前已经授予了该第 3 方服务的权限。我不得不每次都按“连接”,这从用户的角度来看是一种拖累(您可以向同一实体授予多少次权限)。我的问题是:是否有一个参数可以让 soundcloud 识别/验证用户帐户对特定第 3 方服务的先前权限?或者这是 Soundcloud Oauth 设计实现,我们必须忍受它?
编辑:
也许这不清楚,但每次我在 soundcloud 中按“连接”时,都会生成并传递一个新的访问令牌。由于我的应用程序使用此访问令牌来识别其用户,因此每次我想登录时访问令牌都会更新,这对我来说效果不佳,这让我每次都有效地“注册”。综上所述,我想将之前归属的令牌获取到我的帐户,这样我就可以在我的数据库中查找,识别它并登录他。
我也在寻找一种不涉及在客户端中存储可能被清理的状态的解决方案。