Facebook API - 获取永不过期的令牌

时间:2014-11-12 02:58:42

标签: facebook api oauth facebook-graph-api-v2.1

我想生成一个永不过期的令牌。

我拥有“manage_pages”权限,如果用户有“粉丝专页”,则该令牌永不过期。

但如果用户没有创建任何粉丝,则该令牌将在2个月后过期。

我使用的是最新的api(PHP SDK)。

这是我的登录信息:

$session = $helper->getSessionFromRedirect();

$token = $session->getToken();

之后,我正在做类似的事情:

$accounts = new FacebookRequest($session, 
'GET', 
'/me/accounts?fields=picture,access_token,name');

如果你们中的一些人知道我怎么能得到一个永不过期的令牌,尽管用户没有粉丝页面会很好

2 个答案:

答案 0 :(得分:1)

永久有效的唯一令牌是应用访问令牌扩展页面访问令牌。您无法获得永久有效的用户令牌,无论如何您永远不需要它。如果用户超过2个月没有访问该应用程序,他很可能不再使用该应用程序。您可以在用户访问您的应用时使用FB.getLoginStatus轻松刷新用户令牌。

以下是您需要了解的有关访问令牌的所有信息:

答案 1 :(得分:0)

如果您可以访问所需的Graph API,则可以在不需要App Access令牌的情况下调用Graph API。如Facebook所述:

还有另一种调用Graph API的方法,它不需要使用生成的应用令牌。您可以在拨打电话时将app id和app secret作为access_token参数传递: http://graph.facebook.com/endpoint?key=value&access_token=app_id|app_secret 使用生成的访问令牌与此方法的选择取决于您隐藏应用程序密钥的位置。

您可以在此处详细了解:

https://developers.facebook.com/docs/facebook-login/access-tokens#apptokens