2011-06-15 133 views
5

我们最近一直在使用Facebook登录时遇到问题。由于每个登录用户都能够对我进行一次图形调用,因此我们遇到了两个错误:Facebook Oauth当砰的一声图api时出现异常错误?

“message”:“Error验证访问令牌:由于用户已更改密码,会话已失效。“ “message”:“验证访问令牌的错误:会话与当前存储的会话不匹配,这可能是因为用户在会话创建或Facebook出于安全原因更改会话后更改了密码。

第一个似乎在新用户登录时发生,第二个更多发生在已经授权我们的应用程序的用户。看起来他们能够获得第一个/我的图形调用的用户名,然后oauth标记被搞砸很长一段时间(其中一些最终由于某种原因返回)。

我最近发现我们的代码为我/ home JSON重击了两次facebook。当我把这段代码拿出来时,我可以通过Rest找到图API,它并没有给我带来错误。

我已经看到各种错误提及的问题与Facebook,但问题被认为是“固定”,很难看到为什么砰的两次Facebook会杀死我们的身份验证令牌 - 你会认为我们会得到一个消息限速。

有没有人有解释这是什么?我仍然没有证实接受第二次呼叫是修复,但到目前为止它看起来像。

+0

如果你能找到任何解决方案/破解它,你能分享吗?我一直面临同样的问题,并仍然在这里解决:http://stackoverflow.com/questions/6248173/facebook-access-token-invalid-with-message-session-does-not-match-current-stored – DhruvPathak 2011-08-09 05:47:58

回答

5

我遇到了同样的问题。看看这个blog post如何处理无效的访问令牌 - 它解释了如何重新授权用户。

我有一个理论,一旦他们击中他们的系统,请求就会被重新路由,从而多次执行。这是未经证实的,但我肯定有问题,我只发送1个请求,但2或3似乎开火。有趣的是,我已经看到,如果您提供取消授权的回拨URL并且某人卸载了您的应用程序,Facebook将会向该URL调用3次。这使得一些有趣的日志...

不幸的是,Facebook的发展就像狂野的西部......它是无法无天,他们经常说一件事,意味着另一件事(或在这种情况下声称东西是固定的, t)

+0

谢谢,很高兴听到这不仅仅是我!我认为我们目前的假设是,我们连续击中了来自两个不同IP的相同图形URL - 请注意,我们得到的错误结果是:“由于安全原因,Facebook已更改会话。” Facebook可能有一些反欺骗的东西......这可以解释你的问题吗? – 2011-06-15 21:17:04

相关问题