某些应用程序无法获得长期存在的页面令牌

时间:2012-09-28 17:32:32

标签: migration deprecated access-token facebook-access-token

Facebook的offline_access弃用迁移计划于今年早些时候发布。然而,它被推迟了多次,直到10月3日,大概是因为它有缺陷并且尚未完全实施。截至目前,迁移仍然不完整且容易出错。

经过数月和数月的准备变更,更新我们的代码库,以及重复(徒劳)尝试与Facebook合作,这个破碎的迁移将在一周内上线。

如错误报告(http://developers.facebook.com/bugs/151056591697025)中所述,对于我们的应用程序,无法获取长期页面访问令牌(使用offline_access权限的替代方法)。 Facebook似乎没有给予该问题关注。

如果Facebook继续无所作为,10月3日,我们的应用程序(以及其他许多应用程序)将会中断。我们该怎么办?


更新

以下工作流程显示某些内容无效的最确凿证据:

  1. 确认我们收到了用户的短期令牌。
  2. 确认我们可以将该短期令牌转换为长期令牌。
  3. 确认当使用此长期令牌获取页面访问令牌时,它们将在60天后过期。
  4. 这是合适的工作流程,对吗?

1 个答案:

答案 0 :(得分:1)

我相信我已经解决了问题(至少在我的场景中)。要使这项工作需要两件事:

  1. 我们成功获得了服务器端的长期访问令牌。但是,我们无法在客户端API(通过/ me / accounts)中使用长期令牌来获取未到期的页面访问令牌。这可能是由于客户端从未收到更新的长期访问令牌这一事实。

    无论如何,我们将“页面访问令牌获取”代码从客户端迁移到服务器端,这似乎解决了问题。 (我想在客户端必须有一种方法可以做到这一点,但是可能很难强制客户端API使用更新的长期访问令牌而不是短期访问令牌。)

  2. 我们的更改似乎没有任何效果(至少在我们现有的测试用户和测试应用程序上),直到我们从Facebook用户的帐户中完全删除了我们的Facebook应用程序(http://www.facebook.com/settings ?标签=应用程序)。