我不得不承认在服务器端更新过期令牌的过程,因为 FB 用户已注销,这让我感到困惑。如本页所示,处理过期令牌的解决方案似乎仅在用户正在查看可能提示所述用户重新授权应用程序的服务器页面时才有效(JS location.href 重定向到 FB 对话 URL)。
如果服务器端应用程序由于一些需要一些时间的处理而保存了访问令牌怎么办?如果服务器想在几个小时/几天后使用短期或长期令牌将某些内容发布到用户的墙上,但用户已经退出 Facebook - 那会怎样?当然,由于用户的注销状态,请求将失败,但这在我看来也意味着服务器在用户重新登录 Facebook 之前将无法有效地发布到用户的墙上(并且该应用恰好尝试在正确的时间再次发布)。
我在这里还是遗漏了一些明显的东西?阻止基于服务器的应用程序发布到预授权用户的墙上似乎是一个疯狂的场景,因为所述用户已经注销(我相信很多很多用户都会定期这样做)。为什么注销==取消授权访问令牌?并且,如果用户重新登录,现有的访问令牌是否会再次生效,或者是否需要一个全新的令牌(假设我们已经获得了 60 天的令牌)?