如何提取Facebook Access令牌到期信息

时间:2012-02-10 21:34:28

标签: facebook facebook-graph-api facebook-php-sdk facebook-access-token

有没有办法获得访问令牌的截止日期,我需要这个,所以我可以刷新我的会话,我也想这样,所以我可以避免在通过PHP cURL获取时查看facebook用户数据。

也在这个链接上 https://developers.facebook.com/tools/access_token/ 如果我单击我的一个自定义应用程序中的DEBUG按钮,我可以看到此信息(例如)

App ID: 23131XX0000123 : My Custom App
User ID: XX99858XX : Mario Bro
Issued: XX11111XX : 2:00 pm Feb 10 2012
Expires: XX11111XX : 3:00 pm Feb 10 2012
Valid:  True
Origin: Unknown
Scopes: email user_likes

并显示该应用的截止日期。有没有办法在PHP SDK或图形URL命令中获取该信息?

2 个答案:

答案 0 :(得分:3)

<强>更新
下面的代码不再有效(请参阅错误报告PHP SDK getSignedRequest does not include "expires" field),并且无法使用PHP-SDK获取该数据。

您可以使用Debug tool手动发现access_token到期的时间。

<击> 您可以从access_token获取signed_request的到期时间:

$facebook = new Facebook(array(
  'appId'=>APP_ID,
  'secret'=>APP_SECRET
));
$signedRequest = $facebook->getSignedRequest();
$expiresDate = date('c', $signedRequest['expires']);
print_r($expiresDate);

<击>

答案 1 :(得分:2)

有一个Graph API端点(可能在此问题之后发布),它为您提供到期时间和其他有用信息。有关详细信息,请参阅Debugging Access Tokens and Handling Errors文档。