6

在阅读 Facebook 关于offline_access 权限删除的帖子时,我被他们提到的短期和长期访问令牌彻底搞糊涂了。

该页面提到

给定访问令牌的有效期取决于它的生成方式

但我没有找到任何进一步的信息。

任何人都对这个确定过程如何详细工作有见解?

4

1 回答 1

8

您的应用程序为客户端身份验证获取的访问令牌是短暂的(大约 2 小时),但您可以扩展它并使用具有有效访问令牌的新端点获取长期令牌。在处理无效/过期访问令牌中,它在使用 Javascript SDK 实现身份验证的桌面 Web 和移动 Web 应用程序下说:

调用 FB.getLoginStatus() 或确保 status: true 在您调用 FB.init() 时设置意味着下次用户登陆您的应用程序并登录 Facebook 时,您将通过这些调用传递 authResponse 对象将包含一个新的、有效的访问令牌。

在这种情况下,它只是用户使用您的应用程序的行为,它隐式地生成了一个新的访问令牌。

如果您使用服务器端身份验证流程,那么您将自动获得一个长期有效的令牌(大约 60 天)。到期后,您必须让用户在同一流程中重新进行身份验证(代码交换)。

您当然可以使用这两种方法,这样您就可以在服务器中获得长期存在的令牌,在客户端中获得短暂的令牌。

于 2012-05-07T18:35:59.200 回答