据我所知,这是使用的OAuth2 API简而言之新的Facebook iframe的画布应用程序的基本过程:刷新Facebook OAuth2访问令牌到期后的正确方法是什么?
- 重定向到(或者用户点击链接)应用程序的授权网址
- 用户授权并且被重定向到您的回调URL
- 回调使用“代码”参数来获得访问令牌
- 访问令牌使用图形API来拉动或推动信息
问题是访问令牌过期相对较快,需要“刷新”,所以我的问题是1)您如何检测到令牌已经过期而不想尝试使用它,并且只是出现错误? 2)获得新令牌的最佳做法是什么?
目前,我只是检测到有一个错误,试图获取用户的信息与他们的访问令牌,然后再次重定向到授权URL - 因为他们已经授权应用空白页闪烁,他们被重定向回到我的应用程序回调,我得到一个新的令牌。这是如此笨重,我不敢相信这是正确的方法。
我怀疑这是答案,但我觉得这是重要的发布这个问题,并得到一些回应。有许多关于访问令牌过期和iframe问题的重复帖子,但没有人询问Facebook文档的这个具体问题。我会在一两天后给你点最好的答案,让人们参加,谢谢。 – mtjhax 2011-01-08 17:25:34
但是如果您的应用或游戏需要重复Facebook API调用,例如使用Javascript或Flash,会发生什么情况?你不能指望用户在游戏的潜在关键时刻每隔一小时就被迫重新加载你的应用程序? – Toxikman 2011-10-06 21:27:53
我知道这有点旧,所以现在可能甚至不重要,但您可以使用Facebook状态URL(来自Facebook API以获取会话状态) – qodeninja 2011-10-30 23:53:27