0

我正在寻找定期轮询 Facebook 以确保用户的 oauth 令牌仍然有效的“正确”方式。我正在使用 Facebook 将用户的帐户验证到我自己的应用程序中。他们对我的应用程序的使用不一定会导致任何 Facebook 图形调用,但我仍然需要知道自从他们登录我的应用程序后 oauth 令牌是否已失效,例如。通过 Facebook 密码更改。

Facebook 有一个页面解释如何处理失效:https://developers.facebook.com/blog/post/2011/05/13/how-to--handle-expired-access-tokens/ 他们也有一个 /me URL可以随时点击以查看令牌当前是否有效。(例如,根据检查 Ouath 令牌是否无效)但是在用户初始登录之外轮询的正确模式和频率是什么?

我正在考虑这样的解决方案:

坏:检查对我的应用程序的每个请求的 oauth 令牌的有效性。(太重了,会减慢每个请求,可能会让 facebook 发疯)

更好?:如果超过 X 分钟未检查 oauth 令牌,则在用户向我的应用程序发出请求时检查 oauth 令牌的有效性

最后一个解决方案感觉不错,但我找不到任何其他人这样做的参考。

这是轮询 oauth 有效性的最佳实践吗?任何人都可以指出引用此用例的文档,或者确认您自己解决了这个问题吗?

4

1 回答 1

0

我实际上更喜欢使用您首先建议的方法。您无需轮询 API 来验证令牌的完整性——如果您尝试使用过期令牌执行 API 调用,Facebook 将返回相应的错误消息。只需添加一个故障安全功能即可检测到您正在拨打的任何电话。

于 2013-07-24T21:56:01.130 回答