有没有办法检查Facebook访问令牌是否仍然有效?

axs*_*uul 72 facebook facebook-graph-api facebook-rest-api

我的网站使用终身访问权限(offline_access).但是,如果用户更改了他/她的密码,则会重置访问令牌.是否有方法在调用Graph API之前检查当前访问令牌是否有效?谢谢你的时间.

ser*_*erg 70

离线,没有向Facebook发送任何内容 - 我不这么认为.最简单的方法可能是发送请求:

https://graph.facebook.com/me?access_token=...
Run Code Online (Sandbox Code Playgroud)

Facebook还支持订阅实时更新,但我不确定如何将它们应用于这种情况.


小智 43

如果您想知道令牌到期时间,您可以使用appid和令牌传递打开的图形URL,如下所示,它将起作用.

https://graph.facebook.com/oauth/access_token_info?client_id=APPID&access_token=xxxxxxxxx
Run Code Online (Sandbox Code Playgroud)

  • 这里的“client_id”参数不执行任何操作。你可以忽略它。 (2认同)

Ott*_*tto 38

基本上,FB希望您对其进行轮询,或者检测案例并重定向用户以使其发生.烦人,但官方:

(旧的,过时的链接.见下文) https://developers.facebook.com/blog/post/500/

编辑:Facebook改变了他们的链接结构,没有重定向.并不感到惊讶

https://developers.facebook.com/blog/post/2011/05/13/how-to--handle-expired-access-tokens/

  • 为"不惊讶"评论+1.:)"快速移动和破坏事物"可能是Facebook公司的一个很棒的哲学,但它确实让我们的生活变得困难...... (11认同)