处理过期的长期访问令牌,服务器端 - 脸书

时间:2014-06-23 07:07:39

标签: facebook facebook-graph-api oauth-2.0 facebook-php-sdk facebook-access-token

在我的网络应用中,我需要在用户离线时发布Facebook Feed。我已经为用户存储了长期存取的令牌。但这些代币也会在60天后到期。

FB文档提到有必要将用户重定向到登录流程以获取更新的访问令牌。

我正在考虑检查用户的facebook会话有效性,只要他们登录我的应用程序并给他们选择在他们的访问令牌已过期时重新验证facebook。 但是,如果用户当前未登录到他的Facebook帐户,则会涉及用户交互。

是否有任何其他解决方案可供选择。此外,像Quora这样的网站如何管理发布到用户的墙上,而不需要每隔60天重新验证一次facebook。

PS - 我正在使用最新的facebook php sdk。

1 个答案:

答案 0 :(得分:3)

简单回答:无法在服务器上扩展访问令牌。这会使整个概念无效。

之前有一个名为“离线访问”的权限,但他们将其更改为扩展令牌,最多60天以避免这些事情。对于每一个帖子,您都不应在未经他授权的情况下在用户的墙上张贴任何内容。您不能自动填充/预填充消息参数(请参阅Facebook术语),它必须始终是100%用户生成的。

关于Quora:我不知道他们究竟在做什么,但我认为只要用户访问他们的网站,他们就会刷新访问令牌。