4

对于少数用户(考虑到我收到的相关邮件的数量,可能不是那么少),与 OAUTH 授权关联的访问令牌似乎立即失效。引导用户完成通常的授权过程,他接受权限,他被重定向到包含访问令牌的正确页面,但是一旦我的应用程序尝试使用访问令牌获取用户 ID,就会收到错误反而:

{"error":{"message":"Error validating access token: Session has expired at unix time 0. The current unix time is 1323939801.","type":"OAuthException"}}

offline_access 是权限的一部分。此外,原因不可能是用户删除授权或更改密码,因为这是在接受授权后立即发生的。在我的应用程序流程中,我已经尝试重试几次,从收到的日志中我可以看到错误始终相同:再次引导用户完成授权过程没有用,因为用户再次被重定向到页面片段中的 access_token。显然,用户解决此问题的唯一方法是将应用程序从授权应用程序列表中删除并重新执行相同的操作(除非在第 n 次重试时它开始工作,并非所有用户都在事情开始工作时回信)。

这可能是什么原因?

4

2 回答 2

0

离线访问已被弃用,我不会再要求它了。相反,至少在 iOS SDK 中,有一种更新方法。

于 2012-06-04T21:32:24.097 回答
0

我似乎遇到了同样的问题,请在此处查看我的问题:会话已失效,因为用户更改了密码-> 编辑:我认为这不再是同一件事,我找到了根本原因,请参阅回答那个问题。

这里还有另一个相关问题:如何在 Android 上删除所有可能缓存的令牌或会话 ID?

任何线索还没有..?

于 2011-12-16T11:49:23.867 回答