我需要知道 Facebook 访问令牌的到期时间。
我已经知道以下方法:
延长令牌寿命。响应将包含令牌过期时间。但是这种方法需要我们并不总是拥有的应用程序秘密。
使用 Facebook 令牌调试器 ( https://developers.facebook.com/tools/debug )。但这需要我们的代码来解析这个 html 文件,而且看起来不太优雅。
那么有没有可能使用graph api/fql来查询token的过期时间呢?我在谷歌上搜索过,但没有得到答案。
我需要知道 Facebook 访问令牌的到期时间。
我已经知道以下方法:
延长令牌寿命。响应将包含令牌过期时间。但是这种方法需要我们并不总是拥有的应用程序秘密。
使用 Facebook 令牌调试器 ( https://developers.facebook.com/tools/debug )。但这需要我们的代码来解析这个 html 文件,而且看起来不太优雅。
那么有没有可能使用graph api/fql来查询token的过期时间呢?我在谷歌上搜索过,但没有得到答案。
您需要查询以下端点并检查响应:
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"]
}
}
*/