gpt4 book ai didi

Twitter 不记得授权

转载 作者:行者123 更新时间:2023-12-04 17:23:50 31 4
gpt4 key购买 nike

我使用 Scribe (OAuth1.0) 作为一种机制,以便用户可以使用他们的 Twitter 帐户对我的 GWT/GAE 应用程序进行身份验证。

根据 https://dev.twitter.com/docs/auth/implementing-sign-twitter ,有 3 种可能的情况:
a/用户已登录并获得批准。在这种情况下,Twitter 应该将用户透明地重定向回我的应用程序 URL,
b/用户已登录但未授权,或
c/用户未登录

当 Twitter 返回到我的应用程序(回调)时,我使用 verifier 参数从 twitter 读取用户数据,我用它来确定我的应用程序中的用户。

除了以下内容外,所有这些都可以正常工作:

场景 a/对我不起作用。尽管用户已经授权我的应用程序读取他的用户数据,但 Twitter 似乎不记得这一点,并再次要求授权访问。 (情景b/)。

最佳答案

twitter 为请求 OAuth token 的应用程序提供了两个 URL:/oauth/authenticate/oauth/authorize .当应用程序将用户定向到 时授权 端点 - Twitter 将在用户每次登录时请求用户授权应用程序。 认证 端点将请求授权一次,然后任何后续的 Twitter 登录都将无缝传递到应用程序回调。这在传统上称为“使用您的 Twitter 帐户登录”。

在 Scribe 中,默认值为 授权 - 将此更改为 认证 你需要两件事:

  • 确保在您的 Twitter 应用程序设置页面中选中允许此应用程序用于使用 Twitter 登录设置。
  • 在您的应用程序中 - 当您指定要使用的 Scribe API 类时 - 而不是使用 org.scribe.builder.api.TwitterApi.class将此更改为 org.scribe.builder.api.TwitterApi.Authenticate.class

  • 现在,您的应用程序将引导用户登录 /oauth/authenticate端点,如果他们至少授权了你的应用程序一次,他们就会通过。

    编辑:
    附加文档 - https://dev.twitter.com/docs/api/1.1#102

    关于Twitter 不记得授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14336605/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com