当用户当前离线时,如何从我的网站检查用户的 access_token 是否有效?(或者甚至登录用户不是我想要检查的用户?)
大多数关于检查 token_access 的教程都适用于使用路径“/me”的当前登录用户。
但我想检查我的 FB 应用程序的任何用户。我将需要一个像(伪代码)这样的方法
$facebook->checkAccessToken($token);
我已经在我的数据库中保存了用户的令牌,我想从 fb 获得反馈,令牌是否仍然有效。
当用户当前离线时,如何从我的网站检查用户的 access_token 是否有效?(或者甚至登录用户不是我想要检查的用户?)
大多数关于检查 token_access 的教程都适用于使用路径“/me”的当前登录用户。
但我想检查我的 FB 应用程序的任何用户。我将需要一个像(伪代码)这样的方法
$facebook->checkAccessToken($token);
我已经在我的数据库中保存了用户的令牌,我想从 fb 获得反馈,令牌是否仍然有效。
尝试这个
$url = 'https://graph.facebook.com/debug_token?input_token='.$USER_TOKEN.'&access_token='.$APP_TOKEN;
$a = file_get_contents($url);
离线访问已被弃用,不再存在。现在要走的路是扩展短期访问令牌。
https://developers.facebook.com/docs/facebook-login/access-tokens/
查看“到期和扩展令牌”一章。基本上,您必须查询图形 API 并发送一些特定于应用程序的参数。你将要得到的是你的长寿令牌。
GET /oauth/access_token?
grant_type=fb_exchange_token&
client_id={app-id}&
client_secret={app-secret}&
fb_exchange_token={short-lived-token}
(取自官方文档)
请注意,即使是长期存在的令牌也会随时过期。使用 Graph API 资源管理器获取有关访问令牌的详细信息。
肉和土豆不是希望您生成一个不会过期的令牌,而是希望您的令牌过期后有一个干净的身份验证流程。对过期令牌实施检查。在用户下次访问时刷新令牌。这就是成功的一半!
快乐编码!