Facebook Graph API / debug_token没有返回expires_at

时间:2013-06-21 16:32:38

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

我正在使用PHP SDK并尝试获取用户的访问令牌的到期日期。根据Facebook文档

GET /debug_token?
     input_token={input-token}&
     access_token={access-token}

应该返回

{
    "data": {
        "app_id": 138483919580948, 
        "application": "Social Cafe", 
        "expires_at": 1352419328, 
        "is_valid": true, 
        "issued_at": 1347235328, 
        "metadata": {
            "sso": "iphone-safari"
        }, 
        "scopes": [
            "email", 
            "publish_actions"
        ], 
        "user_id": 1207059
    }
}

然而,当我跑

$access_token_debug = $facebook->api('/debug_token', 'GET', array(
    'input_token' => 'USER_TOKEN',
    'access_token' => 'APP_TOKEN'
));

我得到了这个:

Array
        (
            [data] => Array
                (
                    [app_id] => 3.31449226977465E+14
                    [is_valid] => 1
                )

        )

我真的只对expires_at参数感兴趣。还有什么我应该做的吗?可能是我忘记启用的设置?

1 个答案:

答案 0 :(得分:0)

对于提供的输入令牌,您可能已获得manage_pages的许可。 如果长期访问权限交换为manages_pages权限,则它没有到期日期。