【问题标题】:Auto Authorize Twitter Web App自动授权 Twitter Web 应用程序
【发布时间】:2011-08-23 10:09:04
【问题描述】:

我正在使用 Oauth 为我们网站的用户创建一种登录方式 使用他们的推特账户。但是,这很烦人 每次他们单击以使用他们拥有的 Twitter 帐户登录时 每次都授予访问权限。

难道它不能工作,如果它已经被授予,一旦他们没有 继续授予访问权限?因此删除一个步骤。我正在使用 步骤在:

http://net.tutsplus.com/tutorials/php/how-to-authenticate-users-with-twitter-oauth/

感谢您的任何反馈!

【问题讨论】:

    标签: php api oauth twitter


    【解决方案1】:

    在 twitterapi irc 上与一些开发者交谈后找到了答案

    基本上我会带着我所有的 oauth 去https://twitter.com/oauth/authorize,我需要做的是转而去https://twitter.com/oauth/authenticate。这将给予永远的授权。

    【讨论】:

      【解决方案2】:

      当用户连接时,您会收到一个访问令牌和一个秘密令牌,每次您向 Twitter API 询问任何内容时都会使用它们。

      如果您不希望您的用户与 twitter 保持联系,您只需将这两个令牌保存在您的数据库中。 (它们是特定于用户的,不要为每个用户使用一个令牌)。 当您知道这些令牌时,您不需要请求用户授予访问权限,您可以直接使用它们来调用 API。

      如果用户删除了您的应用程序的权限,您将无法再使用他的令牌,您必须要求他重新授予访问权限。

      【讨论】:

      • 再次,请参阅我对另一个答案的评论。用户根本没有在我的网站上登录。我希望他们点击“twitter”,如果他们已经使用他们的 twitter 帐户授权了我的应用程序,那么请登录。
      • 好的,我更了解您的问题。对不起,我不知道twitter API 不足以回答这个问题(其实我以为是twitter 自动完成的)
      【解决方案3】:

      您需要启动您在数据库或其他长期存储方法中获得的令牌/令牌秘密。然后将其传递给执行 OAuth 身份验证的对象,这样您就不必一直询问您的用户。使用 PHP,您可以将它们存储在 MySQL 或类似数据库中,并在用户登录时将它们加载到 $_SESSION 以传递值。

      【讨论】:

      • 如果我错了,请原谅我,但我认为这不会解决问题。示例: 第 1 天:用户来到网站,点击使用 twitter 登录,登录到 twitter,点击“登录”以授权网站与 twitter 帐户交谈,发送回网站,一切都很好。第 2 天:用户回来,点击 twitter 登录,他们必须再次授权应用程序。这是我试图避免的步骤。
      猜你喜欢
      • 2014-12-01
      • 2018-02-17
      • 2013-05-21
      • 2011-03-16
      • 2012-04-07
      • 1970-01-01
      • 2018-04-11
      • 2011-12-20
      • 2019-08-18
      相关资源
      最近更新 更多