【问题标题】:How to process multiple accounts with OAuth?如何使用 OAuth 处理多个帐户?
【发布时间】:2011-04-07 13:34:02
【问题描述】:

我有一个应用程序,它通过存储一组用户名和密码来发布到多个 Twitter 帐户。最近,Twitter 更新了他们的 API,所以我必须使用 OAuth 进行身份验证,而不是存储凭据。如何让用户在一个过程中对多个 Twitter 帐户进行身份验证?

例如,我有一个带有提交按钮的文本框。当用户单击提交按钮时,我希望将文本框值发布到 user1、user2 和 user3 的 Twitter 帐户。这意味着他们必须同时登录到 3 个帐户才能使单击工作正常吗?这怎么可能?

PS——我也在为 Facebook 做这件事,并且是相同的 API / OAuth 概念,这就是为什么我也用 Facebook API 标记它。

【问题讨论】:

    标签: c# .net facebook oauth twitter


    【解决方案1】:

    用户不必同时登录 3 个帐户;但他必须使用不同的帐户三次授权您的应用。

    请参阅Twitter's OAuth FAQ - 访问令牌不会过期。用户授权您的应用程序后,您将访问令牌存储在数据库中。然后,您只需再次重复该过程并存储下一个访问令牌。

    对于 Facebook,令牌是短暂的,但您可以请求 extended permission "offline_access"。这将使您大致实现与 twitter 相同的功能。

    【讨论】:

      【解决方案2】:

      我遇到的问题是我可以成功地对我需要的 3 个社交网络(FB、Twitter 和 Dropbox)进行一次 oAuth,但是当我尝试允许我的用户为给定社交网络中的任何一个 oAuth 另一个帐户时网络已经登录,并且不会出现另一个对话框让用户输入用户名/密码来授权给定的帐户。

      Hootsuite 允许您轻松地为给定的社交网络添加多个帐户,并且每次您尝试添加新帐户时,它似乎已经成功地“忘记”了您为授予该访问权限所做的先前登录。例如。我可以在 Hootsuite 中连续输入三个 Twitter 连接,而不会遇到上述问题。

      有什么建议吗?有没有办法让社交网络知道我只想在 oAuth 过程中授权但不一定要登录?

      谢谢!

      AG3

      【讨论】:

      • 我意识到这是一篇旧帖子,但您有没有找到解决方案?现在有这个确切的问题!我的 oauth 工作正常,只是似乎无法找到“注销”用户的方法,以便他们可以使用另一个帐户重新进行身份验证。将非常感谢您所拥有的任何知识!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-18
      • 2018-03-30
      • 2021-12-18
      • 2012-12-25
      • 2015-06-19
      • 2018-06-12
      相关资源
      最近更新 更多