如何从服务器端处理过期的令牌

时间:2012-06-10 18:25:37

标签: facebook-access-token

我必须承认在服务器端更新过期令牌的过程,因为FB用户已经注销,让我感到困惑。处理过期令牌的解决方案as presented on this page似乎只有在用户查看可以提示用户重新授权应用程序的服务器页面时才会起作用(JS location.href重定向到FB对话框URL)。

如果服务器端应用程序由于某些处理需要一些时间而保存了访问令牌,该怎么办?如果经过几个小时/几天,服务器想要使用短期或长期令牌向用户的墙发布内容,但用户已退出Facebook - 那么呢?当然,由于用户的注销状态,请求将失败,但在我看来这也意味着服务器将没有有效的方式发布到用户的墙上,直到他们重新登录到Facebook(并且应用程序恰好尝试在正确的时间再次发布。)

我是在这里还是遗漏了一些明显的东西?似乎是一个疯狂的场景,以防止基于服务器的应用程序发布到预授权用户的墙上,因为所述用户已经注销(我确信很多用户定期执行此操作)。为什么要注销==取消授权访问令牌?并且,如果用户重新登录,现有的访问令牌是否再次生效,或者是否需要一个全新的令牌(假设我们已经获得了60天的令牌)?

1 个答案:

答案 0 :(得分:0)

  

为什么要注销==取消授权访问令牌?

没有。只是因为用户退出Facebook,长期访问令牌才会失效!

因此,获得一个长期的,有效期为六十天 - 并且您可以在需要令牌后几天去发布或做任何事情。如果60天结束且用户之后没有与您的应用进行互动,那么您必须让用户返回您的应用以获取新令牌。