如何获得过期的Facebook用户访问令牌的通知

时间:2012-04-21 19:58:02

标签: javascript facebook-graph-api

我已经看过很多例子,并阅读了一些文章以了解访问令牌到期情况,本文中对此进行了详细解释,Access Token Expiration

我知道如何续订过期访问令牌。但问题是,正如文章中所解释的那样,访问令牌可能有4个原因。

因此,无法确定访问令牌何时过期且可以随时出现。传统的解决方案是使用offline_permision,很快就会被FB弃用。

这是我想要实现的目标:

  1. 一旦访问令牌过期,当用户使用我们的Facebook应用程序时,我希望FB通知我。

  2. 收到通知后,请续订访问令牌。

  3. 我不认为以下是我想要的。

    FB.Event.subscribe('auth.authResponseChange', function(response) {
         alert('The status of the session is: ' + response.status);
    });
    

    因此,当访问令牌过期时,有没有办法从FB获得通知?

1 个答案:

答案 0 :(得分:2)

当您尝试使用过期令牌访问API时,Facebook将发回错误消息。您只需检查处理Facebook响应的回调函数中的错误,如果存在错误,请刷新令牌并再次尝试API调用。

来自Facebook:

  

Facebook 未通知您先前发布的访问令牌已失效。除非您持久地将访问令牌传递给您的应用程序的过期时间,否则当您尝试向API发出请求时,您的应用程序通常会首先知道给定令牌已变为无效。