Ruby on rails 如何在facebook graph api中处理过期的访问令牌
我正在开发一个web应用程序,我在其中实现了Facebook连接。用户可以从我的网站发布到他/她的Facebook墙 我知道从我的站点更新用户状态需要访问令牌&访问令牌在一定时间后(即2小时后)过期 所以,若用户的访问令牌过期,那个么用户需要通过Facebook重新验证,才能在墙上发表文章。但我想实现它,就像推特一样。一旦你将你的Facebook帐户连接到Twitter,你的推文就会发布到Facebook上 我读过,但不懂PHP。 我可以续订代币吗?如果是,那怎么办?twitter是如何实现的? 请引导我,我对这东西还不熟悉Ruby on rails 如何在facebook graph api中处理过期的访问令牌,ruby-on-rails,ruby,facebook,facebook-graph-api,oauth,Ruby On Rails,Ruby,Facebook,Facebook Graph Api,Oauth,我正在开发一个web应用程序,我在其中实现了Facebook连接。用户可以从我的网站发布到他/她的Facebook墙 我知道从我的站点更新用户状态需要访问令牌&访问令牌在一定时间后(即2小时后)过期 所以,若用户的访问令牌过期,那个么用户需要通过Facebook重新验证,才能在墙上发表文章。但我想实现它,就像推特一样。一旦你将你的Facebook帐户连接到Twitter,你的推文就会发布到Facebook上 我读过,但不懂PHP。 我可以续订代币吗?如果是,那怎么办?twitter是如何实现的?
提前谢谢 您无法续订访问令牌。但您可以请求扩展权限。当您的应用程序具有此权限时,您将收到一个长期有效的
access\u令牌
我似乎记得在某个地方读到它的有效期为30天。。。但是我不能100%确定这个数字。离线访问权限永远有效,或者直到用户在他们的facebook应用程序设置中明确取消对你的应用程序的身份验证。我在我的应用程序中检查此项的方式如下:
@$accounts = json_decode(file_get_contents("https://graph.facebook.com/".$fb_info['uid']."/accounts?access_token=".$fb_info['access_token']));
if($accounts){
$deauthed=false;
}
现在重新申请新访问令牌的权限,那么Twitter如何管理用户Facebook墙上的帖子?他们不经常要求访问令牌。我认为处理它的不是twitter,而是一个与facebook和twitter API对话的应用程序……我还在facebook上创建了我的应用程序。它将如何帮助做到这一点?说twitter也使用oAuth方法进行身份验证。你必须制作一个facebook应用程序,该应用程序使用twitter api和他们自己的oAuth方法用你的facebook帖子的内容更新twitter。更好的方法是在你的应用程序的高级开发人员设置中指定你的取消授权回叫。这样,当用户对你的应用进行反授权时,facebook将向你指定的URL发送一个“已签名的请求”,该URL使用你的应用程序机密进行签名,然后解析为json对象。这里是文档的链接