【问题标题】:oAuth 2.0, access_token, Facebook, TwitteroAuth 2.0、access_token、Facebook、Twitter
【发布时间】:2014-09-09 22:40:42
【问题描述】:

我花了很多时间寻找有关在 FB 和 Twitter 上使用 oAuth 的任何说明。 我必须做将使用 access_token 的应用程序。此令牌也将用于不同的设备,以通过 API 访问用户帐户。 当我在寻找“如何使用 access_token”时,我只找到“如何获取令牌”。 如果我错过了阅读文档,请告诉我,尤其是示例在哪里 - 如何在其他设备上使用此令牌来访问 API 以发送例如。邮政。 我发现 Twiiter4j 和 Facebook4j 这些库帮助了我...我有这个 access_token,现在下一步,如何连接到 API...我知道不可能访问 Twiiter API - 好的,但是 FB 呢和“客户端”

请帮忙。

【问题讨论】:

  • 查看 Facebook 和 Twitter 的官方文档。

标签: java javascript facebook oauth access-token


【解决方案1】:

Oauth 可能很复杂,所以让我试着简单地解释一下。

  1. 用户访问您的网站
  2. 您的网站会检查它之前是否见过此访问者(通常使用 cookie)
  3. 如果没有,请将它们发送到 FB/Twitter/Whatever 的 oauth 网址。在该重定向中,我们告诉 FB/Twitter/Whatever 我们将需要 x、y、z 权限(访问用户时间线、查看用户朋友等)。我们还告诉 FB/Twitter/Whatever,当用户说好的时,将他们发送回 www.myurl... 最后,我们获取此请求中的所有内容并“加密”它,以证明这确实是我们的网站要求的。关键只保存在我们的后端,所以前端(javascript/html)永远看不到它。
  4. FB/Twitter/任何看到请求的人。他们还看到了请求的“加密”形式。 Fb/Twitter/Whatever 也知道这个密钥(他们把它给了我们,当你配置你的 oauth 时它通常被称为“秘密”)他们可以验证它真的是你的后端请求许可。
  5. 如果用户同意,我们会得到一个令牌。我们存储该令牌(在我们的后端、php、java、ruby 等)并记住它属于该用户。

这里要强调的主要一点是,为了进行 oauth 握手,您需要一个永远不会输出到浏览器的密钥。这意味着您需要在后端实现其中的一部分。你已经用java 标记了它,所以这可能意味着你使用java 作为你的后端,可能使用谷歌应用引擎或其他东西。您需要为此找到 oauth 库,然后从那里解决。

您不能仅使用前端代码创建 oauth 握手。

【讨论】:

  • 谢谢你,我只能感谢你,因为我没有足够的声誉来投票给你的答案。
  • 没问题!希望对您有所帮助!
猜你喜欢
  • 2011-03-19
  • 2014-06-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-17
  • 2012-10-13
  • 1970-01-01
  • 2017-05-28
  • 2011-07-14
相关资源
最近更新 更多