如何查询Facebook访问令牌的到期时间?

时间:2012-05-21 03:32:36

标签: facebook token

我需要知道Facebook访问令牌的到期时间。

我已经知道以下方法:

  1. 延长令牌生存时间。响应将包含令牌到期时间。但是这种方法需要我们并不总是具有应用秘密。

  2. 使用Facebook令牌调试器(https://developers.facebook.com/tools/debug)。但这需要我们的代码解析这个html文件,看起来不太优雅。

  3. 那么有没有可能使用图形api / fql来查询令牌的到期时间? 我在谷歌搜索但没有得到答案。

1 个答案:

答案 0 :(得分:1)

您需要查询以下端点并检查响应:

graph.facebook.com/debug_token?
             input_token={token-to-inspect}
             &access_token={app-token-or-admin-token}

如果管理员令牌不好,则fb返回

{"error":{"message":"Invalid OAuth access token.","type":"OAuthException","code":190}}

如果input_token不好,则fb返回

{"data":{"error":{"message":"Invalid OAuth access token.","code":190},"is_valid":false}}

    /* successful response
     * {
            "data": {
            "app_id": APPID,
            "is_valid": true,
            "application": "APPNAME",
            "user_id": UID,
            "issued_at": 1371671725,
            "expires_at": 0,
            "scopes": ["create_note", "manage_pages", "photo_upload", "publish_actions", "publish_stream", "share_item", "status_update", "video_upload"]
            }
        }
     */