FB OAuth返回访问令牌,但没有expires值

FB OAuth返回访问令牌,但没有expires值,oauth,facebook-oauth,Oauth,Facebook Oauth,说明: 我对OAuth服务没有返回expires值有一个问题 该应用程序对简单的WebRequests使用服务器端身份验证,不重定向SDK,并且完全符合 我们将expires值存储在自己的数据库中,并使用此信息在accesstoken过期或即将过期时提示用户重新验证 我们不会以任何方式自动或批量更新AccessToken。AccessToken仅通过服务器端身份验证刷新,即该过程始终由用户启动 现在我们注意到,当我们尝试刷新一些但不是所有这些过期的令牌时,OAuth服务不会为步骤4返回过期值,即

说明:

我对OAuth服务没有返回expires值有一个问题

该应用程序对简单的WebRequests使用服务器端身份验证,不重定向SDK,并且完全符合

我们将expires值存储在自己的数据库中,并使用此信息在accesstoken过期或即将过期时提示用户重新验证

我们不会以任何方式自动或批量更新AccessToken。AccessToken仅通过服务器端身份验证刷新,即该过程始终由用户启动

现在我们注意到,当我们尝试刷新一些但不是所有这些过期的令牌时,OAuth服务不会为步骤4返回过期值,即使用户再次确认他确实希望允许我们访问他的facebook帐户。accesstoken返回得很好

其他代币不面临此问题。该问题似乎是随机出现的,但可能与某些用户授予manage_pages权限有关,而其他用户则没有。然而,这只是猜测,我目前无法对此进行测试

该问题可以通过用户手动转到其应用程序设置并从中删除我们的应用程序来解决。下一步执行服务器端身份验证时,OAuth响应包含预期的expires值,后续任何授权该用户的调用也将包含该值

问题:

这种未记录行为的原因是什么? 我们如何修复受影响的令牌? 我们怎样才能防止这种情况发生?
提前感谢您,

这显然是一个已知的错误。参见CBroe的评论

,谢谢CBroe,现在至少我知道这不是我们做错的事情。而且FB并不真的关心这个该死的东西!大约7个月后,我才发现这个错误,但它仍然是个问题。:-:-:-现在我要重构我的应用程序,如果它不存在,我猜60天的期限就到期了。呸,骗子。如果您请求manage_pages权限,您是否可以获得无限制有效性用户的访问令牌?那将是斯威特…:-截至2016年8月12日,这种情况仍在发生。我在获取测试用户时获取expires密钥,但在相对于实际生产用户时不获取expires密钥。仅返回实际的访问令牌密钥。