4

我什么时候需要使用存储在我的数据库中的访问令牌?

  • 此访问令牌是用户访问令牌。
  • 似乎 PHP SDK 在自己获取访问令牌方面做得很好。虽然这看起来像是通过 Session 处理的。
    -- 如果 Session 以某种方式被擦除了怎么办?
    -- 我应该提供一个链接吗?
    - 或者我应该/我可以以某种方式自动化吗?
  • 我是 Facebook 的 Open Graph API 的新手。
  • 我正在使用 Facebook PHP SDK。

我也对 Facebook 上的文档和实现 PHP SDK 感到有些困惑。在花了相当多的时间混合和调整两者之后,我意识到文档中的几乎所有示例都是 PHP SDK 的一部分。因此我的上述问题。

4

1 回答 1

3

没有真正的理由需要将用户存储access_token在数据库中。下次你来使用它的机会是 - 它已经无效了。根据我的经验,它们只持续一两个小时。官方文档指出:

当您从 Facebook 获得访问令牌时,它将立即生效,并可在 Facebook 定义的一段时间内用于对 API 的请求。这段时间过去后,访问令牌被视为已过期,用户将需要再次进行身份验证,以便您的应用程序获得新的访问令牌。给定访问令牌的有效期取决于它的生成方式。

没有关于(正常)令牌可以有效多长时间的具体时间段,因此没有理由存储它。如果您想使用 API 获得所有交易的详尽日志,您可以将令牌存储为参考 - 但 IMO 太过分了......

存储令牌的唯一原因是您正在处理扩展的 access_tokens。如果您正在研究该领域,我可以推荐这篇文章 - “ http://facebook.stackoverflow.com/questions/8982025/how-to-extend-access-token-validity-since-offline-access-deprecation ”。这似乎是处理扩展 access_token 有效性的最全面的帖子。如果您想在用户不一定连接到您的应用程序时代表用户调用 Graph API(或为此根本登录 Facebook -不知道我是否就这样……

于 2012-07-15T21:26:00.633 回答