我正在调整一个已经使用 FB 身份验证和访问 token 一段时间的网站,以处理offline_access 的弃用问题,特别是,执行 fb_exchange_token 操作来为网站用户获取延长持续时间的 token 。它似乎有效,但我有一些问题。我的基本方法是:
我通过通常的服务器端来回过程让用户登录,最终为我提供了用户的有效访问 token 。这工作正常,并且似乎有效期为 5300 秒左右,就像标准/原始 token 一样。
然后我立即执行 fb_exchange_token 调用;这成功了,并给了我一个新的 access_token,可以使用几个月。这是我的网站保存的 token ,以供将来代表用户执行操作时使用。
这很有道理,对吧?接连调用一个电话似乎有点多余,但它让我获得了延长生命周期的 token ,这正是我想要的。我想我可以一直使用原始 token ,直到原始 token 过期为止,而不必担心交换,但是(a)看来我最好从一开始就获得并使用扩展 token ,并且(b)我不清楚过期的 token 是否可以兑换为延长期限的 token 。
那么:有人认为这种方法有什么问题吗?谢谢!
最佳答案
a) 是的,这种方法效果很好。我对我的一些应用程序就是这样做的。
b) 请参阅此常见问题解答中的第 3 项。 http://dominicminicoopers.blogspot.com/2012/03/facebook-access-tokens-and-offline.html
Can I exchange my 60 day access token for a new 60 day access token?
No, sorry you cannot. You can only exchange a valid (meaning current) user access token for an extended one. You cannot extend an already extended access token.
关于facebook - 重新offline_access弃用: When to do the fb_exchange_token thing?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10031936/