有没有办法使用图形API来查找页面访问令牌或应用程序令牌何时到期?
答案 0 :(得分:27)
更新:有一个新的API端点可以访问有关访问令牌的信息。您可以在此处找到信息: Debugging Access Tokens and Handling Errors
https://graph.facebook.com/debug_token?input_token=INPUT_TOKEN&access_token=ACCESS_TOKEN
-
您应该尝试确保在获得时将每个令牌的到期时间与访问令牌一起存储。对于页面访问令牌,这意味着存储用户访问令牌的到期时间。如果您想手动发现今天令牌的到期时间,您应该使用Facebook的Access Token Debugger工具。但是,您不应该单独依赖到期时间 - 实际上,许多令牌将在到期时间之前过期。
除非重置应用程序密钥,否则应用程序访问令牌将永不过期。
页面访问令牌最长可达60天(5184000秒),但更重要的是,只要用户访问用于获取它们的令牌,它们就会持续。一旦您从中获得用户,请they will be invalidated:
基本上,当您丢失用户的令牌时,您将丢失该页面的令牌。相反,您应该为每个用户访问令牌检索一次页面访问令牌。如果丢弃用户访问令牌,则抛弃页面令牌。 您不应该尝试在任何重要时间段内存储页面访问权限。相反,您应该根据需要获取它们,并在用户会话终止时忘记它们。
获取新的页面访问令牌:
https://graph.facebook.com/PAGEID?fields=access_token&access_token=USER_ACCESS_TOKEN
答案 1 :(得分:7)
答案 2 :(得分:6)
现在有一个调试工具的API版本。
请参阅https://developers.facebook.com/docs/authentication/access-token-debug/
答案 3 :(得分:4)
我想对当前版本的API重复这个问题,因为我已经遇到Facebook doc明确没有描述正在发生的事情的情况:
fb_exchange_token
expires_at = 0
)此处的调试工具:https://developers.facebook.com/tools/debug/accesstoken表示"过期:从不"。
答案 4 :(得分:1)
试试这个,它和我一起工作。使用您的应用获取令牌并将其粘贴到图形资源管理器中作为要用于查询的令牌。单击信息a查看到期日期。 example image
我希望它也适合你。
答案 5 :(得分:0)
https://developers.facebook.com/docs/facebook-login/access-tokens/expiration-and-extension
从上面的页面:
网络上的访问令牌通常有两个小时的生命周期,但是 将在需要时自动刷新。如果你想使用 访问令牌为更长寿的Web应用程序,尤其是服务器端,您 需要生成一个长期存在的令牌。一般来说是一个长寿的令牌 持续约60天。