【问题标题】:Facebook OAuth AccessToken ExpirationFacebook OAuth 访问令牌过期
【发布时间】:2011-11-03 19:30:54
【问题描述】:

我需要有关 Facebook OAuth 的帮助。我正在尝试为我的网页制作一个 facebook 新闻提要小工具。我所做的是,我创建了一个 facebook 登录页面,获得了验证码,然后获得了访问令牌。访问令牌中有过期参数。

我的问题是,令牌过期后会发生什么?是否成为新的令牌人再次登录。我想将它存储在数据库中,以便在浏览网页时随时访问它。

如果我使用访问令牌,它还会过期吗?或者如果在给定的过期时间内没有使用它会过期吗?

【问题讨论】:

    标签: php facebook oauth


    【解决方案1】:

    您最初的问题的答案是,访问令牌仅在用户登录时才有效。所以是的,每次他们登录到您的站点时都需要检索新的 access_token。这在authentication flow documentation中有详细说明。

    为了获得一个没有过期(或有很长有效期)的访问令牌,您需要让用户授权offline_access。这应该在您的范围内设置。

    这是来自this documentationoffline_access 权限的描述:

    离线访问 - 使您的应用可以随时代表用户执行授权请求。默认情况下,大多数访问令牌会在短时间内过期,以确保应用程序仅在用户积极使用应用程序时代表用户发出请求。此权限使我们的 OAuth 端点返回的访问令牌长期有效。

    但是,这不会让您永远访问。如果用户更改密码或取消对您的应用程序的授权,您将需要让用户重新授权以获取新的 access_token。如果您尝试使用过期的访问令牌,将返回错误消息。这就是为什么有一个允许这种可能性的流程很重要的原因。

    【讨论】:

      【解决方案2】:

      据我所知,您可以通过在用户进行 fconnect 时随时请求访问我的信息的权限 (offline_access) 来实现这一点。

      【讨论】:

        【解决方案3】:

        【讨论】:

          猜你喜欢
          • 2011-02-10
          • 1970-01-01
          • 1970-01-01
          • 2013-04-04
          • 1970-01-01
          • 2012-05-23
          • 2011-12-19
          • 2012-12-06
          • 2014-07-31
          相关资源
          最近更新 更多