【问题标题】:How to regenerate Twitter Oauth Access Token如何重新生成 Twitter Oauth 访问令牌
【发布时间】:2016-11-24 02:28:44
【问题描述】:

我们正在使用带有 Twitter API 的 Oauth 1.0 身份验证流程。这基本上归结为这个规范:http://oauth.net/core/1.0/#anchor9

我们创建了应用程序并开始吸引用户。后来我们使用 Twitter 实现了注册,现在我们需要来自 API 的用户电子邮件地址。我们询问了 Twitter,请求得到了批准。很好用,很好。

现在我们遇到了现有用户的问题,因为那些在我们获得电子邮件权限之前授权应用程序并且使用他们现有的访问令牌的人,Twitter 没有给我们。

Twitter 在他们的文档中写道 (https://dev.twitter.com/rest/reference/get/account/verify_credentials)

注意

您的应用将需要重新生成用户访问令牌,以便以前经过身份验证的用户访问他们的电子邮件地址。

如何做到这一点?

当我们删除我们这边的相应数据(令牌和秘密)并要求新的身份验证时,它没有任何效果。 Twitter 总是再次向我们提供相同的令牌和秘密......并且在 account/verify_credentials 中调用没有电子邮件地址。

我们发现唯一可行的方法是登录 Twitter 并撤销对应用程序的访问权限。然后我们得到一个新的令牌和秘密,让我们可以访问我们想要的东西。

但我们不想告诉我们的用户,而是使用 API 以编程方式执行此操作。怎么样?

【问题讨论】:

    标签: php api twitter oauth


    【解决方案1】:

    尝试向用户请求新的/不同的权限:

    如果我想为我的用户申请不同级别的访问权限怎么办? 应用程序而不是我的应用程序注册的那个?你 现在可以通过使用 x_auth_access_type 参数在 request_token 阶段。使用此参数,您可以请求读取或 读/写令牌,即使您的应用程序已注册读/ 写/直接消息。

    有关此方法的更多信息,请参见我们的开发人员文档:

    http://dev.twitter.com/oauth/reference/post/oauth/request_token

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-14
      • 1970-01-01
      • 1970-01-01
      • 2023-04-07
      • 2011-12-04
      • 2020-08-10
      相关资源
      最近更新 更多